rest.md

July 15, 2021 · View on GitHub

Bookmarks tagged [rest]

www.codever.land/bookmarks/t/rest

Understanding And Using REST APIs — Smashing MagazineClear SearchBack to top

https://www.smashingmagazine.com/2018/01/understanding-using-rest-api/

Everything you need to know about REST APIs, from start to finish. How and why to use REST APIs, how to deal with headers, error messages and API versions. Let’s get started.


What you really need to know about securing APIs with mutual certificates

https://nevatech.com/blog/post/What-you-need-to-know-about-securing-APIs-with-mutual-certificates

When configuring Mutual SSL security for your APIs, or when calling somebody else’s API using this security model, pay attention to the 4 typical requirements listed in this article. Always take into ...


Multiple Media Types in Java Microservices with RESTEasy

https://stackify.com/multiple-media-types-java-microservices-resteasy/

Learn how RESTEasy can help you support XML and JSON in a Java web service. Know the differences between REST, media types, web services and microservices.


Is your REST assured? - blog.

https://blog.jayway.com/2011/06/04/is-your-rest-assured/

A couple of months ago I introduced a new open source Java framework for simple automated testing of REST/HTTP services called REST Assured. A lot of things have happended to the framework since then ...


JSONPlaceholder - Fake online REST API for testing and prototyping

https://jsonplaceholder.typicode.com/

Free to use fake Online REST API for testing and prototyping Powered by JSON Server + LowDB


Advanced HTTP Mocking with WireMock at DevFest DC - 43min

https://www.youtube.com/watch?v=x3MvZ8DFrpE

Slides

Create HTTP mocks with WireMock’s REST API from any language for deterministic testing a...


REST APIs must be hypertext-driven » Untangled by Roy. T

https://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven

I am getting frustrated by the number of people calling any HTTP-based interface a REST API. Today’s example is the SocialSite REST API. That is RPC. It screams RPC. There is so much coupling on displ...


From REST to GraphQL

https://jacobwgillespie.com/2015-10-09-from-rest-to-graphql/#.5sdd8ltnx

This excellent post by Jacob Gillespie covers some of the interesting things he learned when converting a REST API to GraphQL.

The first part talks about the many reasons why REST didn’t cut it any m...

  • :calendar: published on: 2015-10-09
  • tags: rest, graphql

Understanding pagination: REST, GraphQL, and Relay - Apollo Blog

https://www.apollographql.com/blog/understanding-pagination-rest-graphql-and-relay-b10f835549e7/

In this post, I’ll cover some different approaches to pagination in REST and GraphQL:

  1. Pagination: what is it for?
  2. What are different types of pagination, and when are they useful?
  3. What is it...

Kong/insomnia

https://github.com/Kong/insomnia

Insomnia is a cross-platform REST client, built on top of Electron.


Rest API Testing With JMeter (Step by Step Guide) - Jmeter - OctoPerf

https://octoperf.com/blog/2018/04/23/jmeter-rest-api-testing/

Test a Json Rest API through a concrete example, OctoPerf’s Json Rest API.

And this guide will completely get you through the following knowledge:


How to test a REST api from command line with curl – CodepediaOrg

https://www.codepedia.org/ama/how-to-test-a-rest-api-from-command-line-with-curl/

This post presents examples of making CRUD HTTP calls against a backend REST API. The API chosen supports www.bookmarks.dev


Wiremock Home Page

http://wiremock.org/

WireMock is a simulator for HTTP-based APIs. Some might consider it a service virtualization tool or a mock server.

It enables you to stay productive when an API you depend on doesn't exist or isn't ...


Postwoman • API request builder

https://postwoman.io/

The Postwoman API request builder helps you create your requests faster, saving you precious time on your development.


REST Client - Visual Studio Code Extension

https://marketplace.visualstudio.com/items?itemName=humao.rest-client

Extension for Visual Studio Code - REST Client for Visual Studio Code


GitHub - OAI/OpenAPI-Specification: The OpenAPI Specification Repository

https://github.com/OAI/OpenAPI-Specification

The OpenAPI Specification Repository.


HTTP API design guide extracted from work on the Heroku Platform API

https://github.com/interagent/http-api-design

HTTP API design guide extracted from work on the Heroku Platform API - interagent/http-api-design


Best Practices for Designing a Pragmatic RESTful API

http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api

An API is a user interface for a developer. Learn the best practices to make an API that is easy to adopt and pleasant to use.


How to design a REST API?

http://blog.octo.com/en/design-a-rest-api/

Full guide tackling security, pagination, filtering, versioning, partial answers, CORS, etc.


Richardson Maturity Model

http://martinfowler.com/articles/richardsonMaturityModel.html

Explained by Martin Fowler, originally presented by Leonard Richardson at the QCon 2008.


Enterprise Integration Using REST

http://martinfowler.com/articles/enterpriseREST.html

Discusses the constraints and flexibility that you have with nonpublic APIs, and lessons learned from doing large scale RESTful integration across multiple teams.


HATEOAS

http://timelessrepo.com/haters-gonna-hateoas

Clear explanation on what HATEOAS is, and why you should use it.


How to GET a cup of coffee

http://www.infoq.com/articles/webber-rest-workflow/

In this article, Jim Webber, Savas Parastatidis and Ian Robinson show how to drive an application's flow through the use of hypermedia in a RESTful application.


REST API Tutorial

http://www.restapitutorial.com/

RestApiTutorial.com is dedicated to tracking REST API best practices and making resources available to enable quick reference and self education for the development crafts-person.


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.


API-Security-Checklist

https://github.com/shieldfy/API-Security-Checklist

Best practices about REST API security


JSON API

http://jsonapi.org/

Standard for building APIs in JSON.


RAML

http://raml.org/

Simple and succinct way to describe RESTful API.


JSend

http://labs.omniti.com/labs/jsend

Simple specification that lays down some rules for how JSON responses from web servers should be formatted.


OData

http://www.odata.org/

Open protocol to allow the creation and consumption of queryable and interoperable RESTful APIs. Quite complex.


JSON-LD

http://json-ld.org/

Standard for describing Linked Data and hypermedia relations in JSON (W3C).


Hydra

http://www.hydra-cg.com/

Vocabulary for Hypermedia-Driven Web APIs (W3C).


Schema.org

http://schema.org

Collection of schemas describing common data models.


OpenAPI

https://openapis.org/

Formerly known as the Swagger Specification, OpenAPI specifcation is the world’s most popular description format for defining Restful APIs.


Guzzle

http://guzzle.readthedocs.org/en/latest/

HTTP client and framework for consuming RESTful web services.


Buzz

https://github.com/kriswallsmith/buzz

Another lightweight HTTP client.


unirest for PHP

https://github.com/Mashape/unirest-php

Simplified, lightweight HTTP client library.


restangular

https://github.com/mgonto/restangular

AngularJS service to handle REST API properly and easily.


restful.js

https://github.com/marmelab/restful.js

JS client for interacting with server-side RESTful resources.


traverson

https://github.com/basti1302/traverson

A Hypermedia API/HATEOAS Client for Node.js and the Browser


raml-client-generator

https://github.com/mulesoft/raml-client-generator

Generates static client libs for js.


restler

https://github.com/danwrong/restler

REST client library for node.js.


unirest for Node.js

https://github.com/Mashape/unirest-nodejs

Simplified, lightweight HTTP client library.


Net::HTTP

http://ruby-doc.org/stdlib/libdoc/net/http/rdoc/Net/HTTP.html

Net::HTTP provides a rich library which can be used to build HTTP user-agents.


raml-ruby-client-generator

https://github.com/zlx/raml-ruby-client-generator

Auto generate API client from a RAML file.


postgrest

https://github.com/begriffs/postgrest

Serve a fully RESTful API directly from an existing PostgreSQL database.


MySQL HTTP plugin

http://blog.ulf-wendel.de/2014/mysql-5-7-http-plugin-mysql/

Simple REST-like / CRUD server for any MySQL database.


pREST

https://github.com/prest/prest

A fully RESTful API from any existing PostgreSQL database written in Go.


node-restify

https://github.com/restify/node-restify

Framework specifically meant for REST API.


Sails.js

http://sailsjs.org/

Node.js Web framework embedding a command to generate automatically a REST API.


mers

https://github.com/jspears/mers

Express service exposing Mongoose finders as RESTful API.


Baucis

https://github.com/wprl/baucis

Build scalable REST API based on your Mongoose entities.


flatiron/resourceful

https://github.com/flatiron/resourceful

Isomorphic Resource engine for JavaScript.


loopback

http://loopback.io/

Powerful Node.js framework for creating APIs and easily connecting to backend data sources.


Feathers

http://feathersjs.com/

is a real-time, micro-service web framework that gives you control over your data via RESTful resources, sockets and flexible plug-ins.


Expressa

https://github.com/thomas4019/expressa

Express middleware for creating APIs from JSON schemas with a simple admin editor and permissions model.


rest-hapi

https://github.com/JKHeadley/rest-hapi

Generate RESTful API based on mongoose models that supports relational data.


Nestjsx/crud

https://github.com/nestjsx/crud

Generate CRUD controllers and services for RESTful API with NestJS and TypeORM.


Microrest

https://github.com/marmelab/microrest.php

Micro-web application providing a REST API on top of any relational database.


Negotiation

https://github.com/willdurand/Negotiation

Content negotiation library.


Drest

https://github.com/leedavis81/drest

Library for exposing Doctrine entities as REST resource endpoints.


Restler

https://github.com/Luracast/Restler

Lightweight framework to expose PHP methods as RESTful web API.


HAL

https://github.com/blongden/hal

Hypertext Application Language (HAL) builder library.


Apigility

https://github.com/zfcampus/zf-apigility-skeleton

API builder built with Zend Framework 2.


phprest

https://github.com/phprest/phprest

Specialized REST microframework for PHP.


Hateoas

https://github.com/willdurand/Hateoas

PHP library to support implementing representations for HATEOAS REST web services.


Fusio

https://github.com/apioo/fusio

Open source API management platform.


REST APIs with Symfony2: the Right Way

http://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 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.


DunglasApiBundle

https://github.com/dunglas/DunglasApiBundle

Build a REST API which follow Hydra/JSON-LD specification.


API Platform

https://github.com/api-platform/api-platform

Specialize Symfony edition for the creation of hypermedia REST APIs.


NelmioApiDocBundle

https://github.com/nelmio/NelmioApiDocBundle

Generate documentation for your REST API from annotations.


flask-restful

http://flask-restful.readthedocs.org/

Extension for Flask that adds support for quickly building REST APIs.


flask-restless

https://flask-restless.readthedocs.org/en/latest/

Flask extension for generating ReSTful APIs for database models defined with SQLAlchemy (or Flask-SQLAlchemy).


hug

http://www.hug.rest/

Lightweight and fast API Framework.


restless

http://restless.readthedocs.org/en/latest/

Framework agnostic REST framework based on lessons learned from TastyPie.


savory-pie

https://github.com/RueLaLa/savory-pie/

REST API building library (django, and others).


Python Eve

http://python-eve.org/

Eve is an open source Python REST API framework designed for human beings. It allows to effortlessly build and deploy highly customizable, fully featured RESTful Web Services.


Ramses

https://ramses.readthedocs.org/en/stable/

Makes RAML files executable by generating production-ready APIs from them at runtime.


Flask-Potion

https://github.com/biosustain/potion

Flask-Potion is a powerful Flask extension for building RESTful JSON APIs. It also provides several Clients for easier access to the API.


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.


Rails

http://guides.rubyonrails.org/api_app.html

RailsGuides: Using Rails for API-only applications.


gocrud

https://github.com/manishrjain/gocrud

Go framework to simplify CRUD of structured data using Graph operations - manishrjain/gocrud


sleepy

https://github.com/dougblack/sleepy

RESTful micro-framework written in Go.


go-relax

https://github.com/codehack/go-relax

Framework of pluggable components to build RESTful API's.


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.


Vertx-Web

https://github.com/vert-x3/vertx-web

Vert.x-Web is a set of building blocks for building web applications with Vert.x, a toolkit for building reactive applications on the JVM.


Dropwizard

https://github.com/dropwizard/dropwizard

A framework for developing ops-friendly, high-performance, RESTful web services.


Rest for Haskell

https://github.com/silkapp/rest

This package allows you to create REST APIs in Haskell. These APIs can be run in different web frameworks. They can also be used to automatically generate documentation as well as client libraries.


Hurl.it

https://www.hurl.it/

Make HTTP requests with a simple web-based HTTP client -- like curl in the cloud.


httpie

https://github.com/jkbrzt/httpie

Command line HTTP client, far more dev-friendly than curl.


Postman REST Client

https://chrome.google.com/webstore/detail/postman-rest-client/fdmmgilgnpjigdojojpjoooidkmcomcm

Chrome extension essential to test manually REST API.


resty

https://github.com/micha/resty

Little command line REST client that you can use in pipelines (bash or zsh).


jq

https://github.com/stedolan/jq

Command line JSON processor, to use in combination with a command-line HTTP client like cURL.


HttpMaster

http://www.httpmaster.net

GUI tool for testing REST APIs and services. Windows OS only.


Http-console

https://github.com/cloudhead/http-console

Command line interface for HTTP that let you speak HTTP like a local


HTTP Prompt

https://github.com/eliangcs/http-prompt

HTTP Prompt is an interactive command-line HTTP client featuring autocomplete and syntax highlighting, built on HTTPie and prompt_toolkit.


Insomnia

https://github.com/getinsomnia/insomnia

Cross-platform HTTP and GraphQL Client


RequestBin

https://requestbin.com/

Inspect and debug webhook requests sent by your clients or third-party APIs.


httpbin

http://httpbin.org

HTTP request and response service - a/k/a Swiss Army Knife for HTTP.


FakeRest

https://github.com/marmelab/FakeRest

Patch XMLHttpRequest to fake a REST API client-side.


Mocky.io

http://www.mocky.io/

Free online service to create fake HTTP responses.


Swagger API Mock

https://github.com/bulkismaslom/swagger-api-mock

Mock RESTful API based on swagger schema


Request Baskets

https://github.com/darklynx/request-baskets

Service to collect HTTP requests and inspect them via RESTful API or web UI.


Deck of Cards API

http://deckofcardsapi.com

Open API for simulating a deck of cards.


ProgrammableWeb

http://www.programmableweb.com/apis/directory

The world's largest API repository.


Public APIS

https://www.publicapis.com/

Explore The Largest API Directory In The Galaxy.


Marvel Comics API

http://developer.marvel.com/

Query characters, stories, events about Marvel superheroes.


JSON Placeholder

http://jsonplaceholder.typicode.com/

Free online REST service that you can use whenever you need some fake data.


APIs.guru

http://APIs.guru

Wikipedia for Web APIs, each API has OpenAPI/Swagger description.


Swagger

http://swagger.io/

Documentation/querying web interface for REST APIs.


raml2html

https://github.com/raml2html/raml2html

Generates HTML documentation from a RAML file.


ReDoc

https://github.com/Rebilly/ReDoc/

OpenAPI/Swagger-powered three-panel documentation.


Slate

https://github.com/lord/slate

Beautiful and responsive three-panel API documentation using Middleman.


Kong

https://github.com/Kong/kong

Scalable, distributed, and plugin oriented API gateway backed by Nginx.


Tyk API Gateway

https://github.com/TykTechnologies/tyk

Lightweight API gateway with analytics logging, written in Go.


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 manangement, written in Java.


Express Gateway

https://github.com/ExpressGateway/express-gateway

Microservices API Gateway built on top of ExpressJS (Node.js).


Runscope

https://www.runscope.com/

Automated API Monitoring & Testing.


Ping-API

https://ping-api.com/

Automated API Monitoring & Testing.


import.io Magic

https://magic.import.io/

Create a REST API from any website in one click.


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.


Apigee

https://apigee.com

Apigee is the leading provider of API technology and services for enterprises and developers.


3scale

https://www.3scale.net/

Nginx based API gateway to integrate internal and external API services with 3scale's API Management Platform.


Assertible

https://assertible.com

Continuously test and monitor your APIs after deployments and across environments.


Moesif

https://www.moesif.com

API Analytics for Debugging, Monitoring, and Usage Tracking for RESTful and GraphQL.


Beeceptor

https://beeceptor.com/

An HTTP inspecting, mocking and proxing service. Gives named endpoints for creating mock API endpoints and simulate responses.


react-admin

https://github.com/marmelab/react-admin

Add a ReactJS admin GUI to any RESTful API.


ng-admin

https://github.com/marmelab/ng-admin

Add an AngularJS admin GUI to any RESTful API.


swagger-codegen

https://github.com/swagger-api/swagger-codegen

Auto generation of client libraries or server stubs given an OpenAPI specification (formerly known as the Swagger Specification).


Lumber

https://github.com/ForestAdmin/lumber

Generate the admin interface of your application.


From REST to GraphQL a real world experiment - blog.dev-area.net

https://blog.dev-area.net/2017/01/17/from-rest-to-graphql/

To try out GraphQL I am going to use the Hyperwallet REST V3 APIs and expose them via a GraphQL Server. This includes querying as well as updating data.


django-rest-framework

http://www.django-rest-framework.org/

A powerful and flexible toolkit to build web APIs.


django-tastypie

http://tastypieapi.org/

Creating delicious APIs for Django apps.


eve

https://github.com/pyeve/eve

REST API framework powered by Flask, MongoDB and good intentions.


flask-api-utils

https://github.com/marselester/flask-api-utils

Taking care of API representation and authentication for Flask.


flask-api

http://www.flaskapi.org/

Browsable Web APIs for Flask.


flask-restful

https://github.com/flask-restful/flask-restful

Quickly building REST APIs for Flask.


flask-restless

https://github.com/jfinkels/flask-restless

Generating RESTful APIs for database models defined with SQLAlchemy.


cornice

https://github.com/Cornices/cornice

A RESTful framework for Pyramid.


apistar

https://github.com/encode/apistar

A smart Web API framework, designed for Python 3.


falcon

http://falconframework.org/

A high-performance framework for building cloud APIs and web app backends.


hug

https://github.com/timothycrosley/hug

A Python3 framework for cleanly exposing APIs over HTTP and the Command Line with automatic documentation and validation.


restless

https://github.com/toastdriven/restless

Framework agnostic REST framework based on lessons learned from Tastypie.


ripozo

https://github.com/vertical-knowledge/ripozo

Quickly creating REST/HATEOAS/Hypermedia APIs.


sandman

https://github.com/jeffknupp/sandman

Automated REST APIs for existing database-driven systems.


Dropwizard

https://dropwizard.github.io/dropwizard

Opinionated framework for setting up modern web applications with Jetty, Jackson, Jersey and Metrics.


Elide

http://elide.io/

Opinionated framework for JSON- or GraphQL-APIs based on a JPA data model.


javalin

https://javalin.io

Javalin is just a few thousand lines of code on top of Jetty, which means its performance is almost equivalent to pure Jetty.


Jersey

https://jersey.github.io

JAX-RS reference implementation.


Microserver

https://github.com/aol/micro-server

Microserver is a Java 8 native, zero configuration, standards based, battle hardened library to run Java Rest Microservices via a standard Java main class. Supporting pure Microservice or Micro-monoli...


Rapidoid

https://www.rapidoid.org

A simple, secure and extremely fast framework consisting of an embedded HTTP server, GUI components and dependency injection.


rest.li

https://github.com/linkedin/rest.li

Framework for building robust, scalable RESTful architectures using typesafe bindings and asynchronous, non-blocking IO with an end-to-end developer workflow that promotes clean practices, uniform int...


RESTEasy

https://resteasy.jboss.org

Fully certified and portable implementation of the JAX-RS specification.


RestExpress

https://github.com/RestExpress/RestExpress

Thin wrapper on the JBoss Netty HTTP stack that provides scaling and performance.


Restlet Framework

https://github.com/restlet/restlet-framework-java

Pioneering framework with powerful routing and filtering capabilities, and a unified client and server API.


Spark

http://sparkjava.com

Sinatra inspired framework.


Crnk

http://www.crnk.io

Implementation of the JSON API specification to build resource-oriented REST endpoints with sorting, filtering, paging, linking, object graphs, type-safety, bulk updates, integrations and more.


Swagger

https://swagger.io

Standard, language-agnostic interface to REST APIs.


awesome-rest

https://github.com/marmelab/awesome-rest#readme

A collaborative list of great resources about RESTful API architecture, development, test, and performance - marmelab/awesome-rest


GitHub - axios/axios home page

https://github.com/axios/axios

Promise based HTTP client for the browser and node.js - axios/axios


Spring REST + Spring Security Example – Mkyong.com

https://www.mkyong.com/spring-boot/spring-rest-spring-security-example/

Technologies used :

  • Spring Boot 2.1.2.RELEASE
  • Spring 5.1.4.RELEASE
  • Spring Security 5.1.3.RELEASE
  • Spring Data JPA 2.1.4.RELEASE
  • H2 In-memory Database 1.4.197
  • Tomcat Embed 9.0.14
  • JUnit 4.1...
  • :calendar: published on: 2019-02-25
  • tags: spring, spring-boot, rest, spring-security
  • :octocat: source code

Migrating a Retail Monolith to Microservices: Sebastian Gauder at MicroXchg Berlin

https://www.infoq.com/news/2019/04/monolith-microservices-migration

In his presentation at MicroXchg in Berlin, Sebastian Gauder described how he and his teams migrated an existing food retail monolith at REWE, a large German company, into several business domains wit...


API Blueprint home page

https://apiblueprint.org/

API Blueprint is simple and accessible to everybody involved in the API lifecycle. Its syntax is concise yet expressive. With API Blueprint you can quickly design and prototype APIs to be created or d...


Fastify Homepage

https://www.fastify.io/

Fast and low overhead web framework, for Node.js


[

Architectural Styles and the Design of Network-based Software Architectures ](https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm) https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

This dissertation defines a framework for understanding software architecture via architectural styles and demonstrates how styles can be used to guide the architectural design of network-based applic...


RESTEasy Client API

https://www.baeldung.com/resteasy-client-tutorial

A quick guide to building out a client for the REST API using RESTEasy.


Asynchronous REST Services with JAX-RS and CompletableFuture · allegro.tech

https://allegro.tech/2014/10/async-rest.html

One of new features introduced by JAX-RS 2.0 is asynchronous processing in Server and Client APIs. We use these APIs together with CompletableFutur...


JSON:API Home page

https://jsonapi.org/

A specification for building APIs in JSON


5 Protocols For Event-Driven API Architectures

https://nordicapis.com/5-protocols-for-event-driven-api-architectures/

We define and compare five ways to design event-driven APIs; WebSockets, Webhooks, REST Hooks, Server Sent Events (SSE), and Pub-Sub.


Nate Barbettini – API Throwdown: RPC vs REST vs GraphQL, Iterate 2018

https://www.youtube.com/watch?v=IvsANO0qZEg

Choosing an API design style can be downright daunting. The RPC vs. REST debate has raged for years, and now there's a new kid on the block: GraphQL. Which is right for your application? I'll demystif...


The GitHub GraphQL API

https://githubengineering.com/the-github-graphql-api/

GitHub announced a public API one month after the site launched. We’ve evolved this platform through three versions, adhering to RFC standards and embracing new design patterns to provide a clear and ...


When to Use What: REST, GraphQL, Webhooks, & gRPC

https://nordicapis.com/when-to-use-what-rest-graphql-webhooks-grpc/

Real world, specific use cases for REST, GraphQL, gRPC, and Webhooks to help API developers make sense of which API design style to use for what situation.


Restify Homepage

http://restify.com/

A Node.js web service framework optimized for building semantically correct RESTful web services ready for production use at scale. restify optimizes for introspection and perfromance, and is used in ...


OData - the Best Way to REST - homepage

https://www.odata.org/

OData, short for Open Data Protocol, is an open protocol to allow the creation and consumption of queryable and interoperable RESTful APIs in a simple and standard way.


SpringFox homepage

http://springfox.github.io/springfox/

Automated JSON API documentation for API's built with Spring


GitHub - Netflix/ribbon

https://github.com/Netflix/ribbon

Ribbon is a Inter Process Communication (remote procedure calls) library with built in software load balancers. The primary usage model involves REST calls with various serialization scheme support. -...


Feign

https://github.com/OpenFeign/feign

Feign makes writing java http clients easier.

Feign is a Java to HTTP client binder inspired by Retrofit, JAXRS-2.0, and WebSocket. Feign's first goal was reducing the complexity of binding Denomina...


Rest assured

https://github.com/rest-assured/rest-assured

Java DSL for easy testing of REST services.


API Keys ≠ Security: Why API Keys Are Not Enough

https://nordicapis.com/why-api-keys-are-not-enough/

Youtube video

API Keys are not security. By design they lack granular control, and there are many vulnerabilities at stake: applications that contain ke...


The Hypertext Application Language - HAL

http://stateless.co/hal_specification.html

HAL is a simple way of linking in REST APIs with either JSON or XML.


Parallel Change

https://martinfowler.com/bliki/ParallelChange.html

Parallel change, also known as expand and contract, is a pattern to implement backward-incompatible changes to an interface in a safe manner, by breaking the change into three distinct phases: expand,...


Tolerant Reader

https://martinfowler.com/bliki/TolerantReader.html

In the case of collaborating services, one of the stickiest points is evolution. Although there are some people who believe that you should just get your service definitions right first time so you ne...


Richardson Maturity Model

https://martinfowler.com/articles/richardsonMaturityModel.html

A model (developed by Leonard Richardson) that breaks down the principal elements of a REST approach into three steps. These introduce resources, http verbs, and hypermedia controls.

  • :calendar: published on: 2010-03-10
  • tags: rest

Testing a Spring Boot REST API against a Consumer-Driven Contract with Pact - reflectoring

https://reflectoring.io/consumer-driven-contract-provider-pact-spring/

A guide on how to implement a consumer-driven contract test with Pact that verifies that a REST provider based on Spring Boot works as defined in the contract.


LoopBack 4

http://v4.loopback.io/

LoopBack makes it easy to build modern API applications that require complex integrations.


GitHub - awslabs/aws-serverless-express

https://github.com/awslabs/aws-serverless-express

Run serverless applications and REST APIs using your existing Node.js application framework, on top of AWS Lambda and Amazon API Gateway


GitHub - ttezel/twit: Twitter API Client for node (REST & Streaming API)

https://github.com/ttezel/twit

Twitter API Client for node (REST & Streaming API)


The RESTful cookbook

http://restcookbook.com/

The RESTful cookbook website is inspired by the puppetcookbook from Dean Wilson, who created cookbook recipes on how to deal with some of the issues people are facin...


REST with Java (JAX-RS) using Jersey - Tutorial

http://www.vogella.com/tutorials/REST/article.html

RESTful web services with Java (Jersey / JAX-RS). This tutorial explains how to develop RESTful web services in Java. It uses the JAX-RS reference implementation Jersey. In this tutorial Eclipse 4.7 (...


GraphQL as an API Gateway to Microservices - via @codeship

https://blog.codeship.com/graphql-as-an-api-gateway-to-micro-services/

How can GraphQL be leveraged in an API gateway? It seems like it might be a perfect solution for interacting with multiple microservices, each dedicated to a single resource type. Well, the good news ...


Debugging and logs

https://www.getpostman.com/docs/postman/sending_api_requests/debugging_and_logs

Explains the capabilities of the Postman Console, which is analogous to a browser’s developer console, except that it’s tuned for API development.


Welcome | RAMLWelcome | RAML

https://raml.org/

RESTful API Modeling Language (RAML) makes it easy to manage the whole API lifecycle from design to sharing. It's concise - you only write what you need to define - and reusable. It is machine readabl...


APIDOC - Inline Documentation for RESTful web APIs

http://apidocjs.com/

Generates a RESTful web API Documentation. apiDoc creates a documentation from API annotations in your source code.


api - Hyphen, underscore, or camelCase as word delimiter in URIs? - Stack Overflow

https://stackoverflow.com/questions/10302179/hyphen-underscore-or-camelcase-as-word-delimiter-in-uri...

You should use hyphens in a crawlable web application URL. Why? Because the hyphen separates words (so that a search engine can index the individual words), and is not a word character. Underscore is ...


Asynchronous operations in REST

https://www.adayinthelifeof.nl/2011/06/02/asynchronous-operations-in-rest/

Example on how one might create an asynchronous resource with REST

  • :calendar: published on: 2011-06-02
  • tags: rest

How to build the right smoke test REST service in Java EE with Maven – CodingpediaOrg

http://www.codingpedia.org/ama/how-to-build-the-right-smoke-test-rest-service-in-java-ee-with-maven

This post describes how to develop a REST service in your REST API backend that will provide the information about the current version of the implementation plus the git sha-1 number. It can be very u...


Introduction

https://www.getpostman.com/docs/

Install, sending API Requests, collections, api documentation etc.


Interceptor extension

https://www.getpostman.com/docs/postman/sending_api_requests/interceptor_extension

Postman Interceptor is an extension available for Chrome that can capture and manipulate HTTP requests passing between Postman and web servers. It can capture network requests directly from Chrome and...


Redirecting to latest Dropwizard documentation

http://www.dropwizard.io/

A damn simple library for building production-ready RESTful web services.

It's a little bit of opinionated glue code which bangs together a set of libraries which have historically not sucked:


Extracting data from responses and chaining requests – Postman Blog

http://blog.getpostman.com/2014/01/27/extracting-data-from-responses-and-chaining-requests/

Postman lets you write scripts that run before/after you receive a response from the server. You can do practically anything in these scripts. The pre-request and test scripts run inside a sandbox and...

  • :calendar: published on: 2014-12-27
  • tags: rest, postman

Using variables inside Postman and Collection Runner – Postman Blog

http://blog.getpostman.com/2014/02/20/using-variables-inside-postman-and-collection-runner/

Variables are among the most powerful features in Postman. Using variables in your Postman requests, eliminates the need to duplicate requests, which can save a lot of time!

  • :calendar: published on: 2014-02-20
  • tags: rest, postman

REST vs WebSocket Comparison and Benchmarks

http://blog.arungupta.me/rest-vs-websocket-comparison-benchmarks/

WebSocket is explained, its performance advantage, and why it can not replace REST yet...


API Mediation: Why You Need an API Experience Layer | Nordic APIs |

http://nordicapis.com/api-mediation-why-you-need-api-experience-layer/

As API-centric integration matures, however, it has become very clear that not all API consumers are created equal: data objects may need to be modified based on the device type; orchestration or ...

  • :calendar: published on: 2017-05-01
  • tags: api, rest, soap

REST+JSON API Design - Best Practices for Developers - YouTube

https://www.youtube.com/watch?v=hdSrT4yjS1g

In this presentation, Les Hazlewood - Stormpath CTO and Apache Shiro PMC Chair - will share all of the golden nuggets learned while designing, implementing and supporting JSON-based REST APIs, using e...

  • :calendar: published on: 2012-10-02
  • tags: rest

RESTful API Design - Second Edition - YouTube

https://www.youtube.com/watch?v=QpAhXa12xvU

apigee video

Six months ago we debuted our thoughts about API Design with a presentation called Teach a Dog to REST. Since then we've shared those best practices with architects, engineers and produc...

  • :calendar: published on: 2011-11-08
  • tags: rest

httpbin(1): HTTP Client Testing Service

https://httpbin.org/

Testing an HTTP Library can become difficult sometimes. RequestBin is fantastic for testing POST requests, but doesn't let you control the response. This exists to cover all kin...


Tutorial – REST API design and implementation in Java with Jersey and Spring – CodingpediaOrg

http://www.codingpedia.org/ama/tutorial-rest-api-design-and-implementation-in-java-with-jersey-and-s...

In the blog post I will present you how to “beautifully” design a REST API and also, how to implement it in Java with the Jersey framework. The RESTful API developed in this tutorial will demonstrate ...


To PUT or POST?

https://stormpath.com/blog/put-or-post

For developers building REST-based APIs, there is a great deal of misinformation and some understandable confusion about when to use HTTP PUT and when to use HTTP POST. Some say POST should be used to...


[RestWiki:

Query Strings Considered Harmful](http://web.archive.org/web/20070815111413/http://rest.blueoxen.net/cgi-bin/wiki.pl?QueryStringsConsideredHarmful) http://web.archive.org/web/20070815111413/http://rest.blueoxen.net/cgi-bin/wiki.pl?QueryStringsConsi...

To Query, Or Not To Query... Query params