APIs with SOAP, REST and gRPC¶
- API Testing Interview Questions
- State of the API Report
- Types of API Protocols. Interprocess Communication in Microservices
- API Security
- Free Web Services (Public APIs)
- Open Banking
- Video APIs
- API Business Models
- wikipedia: API Application Programming Interface
- apifriends.com: What is an API?
- axway.com: What is API Management?
- mulesoft.com: APIs versus web services
- Youtube Playlist: Introduction to APIs
- Devdocs.io API Documentation 🌟
- Dzone: 5 Tips for Better REST API Design Good API design is difficult. Maintaining backwards compatibility, effectively testing, handling upgrades, etc. is hard to manage. Check out this guide for help!
- thenewstack.io: 5 Ways to Succeed with an API Gateway
- redhat.com: An Architect’s guide to APIs: SOAP, REST, GraphQL, and gRPC 🌟 There are many strategies for data exchange. Here’s a primer on four essentials.
- dev.to: Why RESTful API rules are not enough or good for you to design good apis?
- dzone: Why Is REST API Architecture Gaining Popularity in the Digital Industry? 🌟
- amazicworld.com: Why APIs can’t be missed when it comes to DevOps
- medium: API Gateway Part 1 Understanding how API Gateway Works
- rapidapi.com: API vs Microservices [What’s the Difference?]
- snipcart.com: API vs. Microservices: A Beginners Guide to Understand Them 🌟
- youtube: Local CRUD API Express App with Docker in 5 min
- levelup.gitconnected.com: What’s Wrong With Your CRUD APIs— Besides Everything?
- freecodecamp.org: REST API Best Practices – REST Endpoint Design Examples 🌟
- APIs published, APIs consumed: mainstream enterprises increasingly behave like software vendors Mainstream enterprises increasingly reach out to customers with APIs, digital services. Unlike software providers though, many still have mostly on-premises infrastructure.
- You Bet That APIs Power DevOps Tools
API Testing Interview Questions¶
- automationreinvented.blogspot.com: Top 30 API Testing Interview Questions & Answers for SDET/API Automation-Rest Assured? SET-03
State of the API Report¶
Postman State of the API Report¶
- postman.com: 2019 Postman State of the API Report 🌟
- blog.postman.com: You Can Now Capture Responses Using the Postman Proxy
Smartbear State of the API Report¶
Types of API Protocols. Interprocess Communication in Microservices¶
- apifriends.com: What are the different types of APIs? 🌟 Types of API Protocols: SOAP, REST and RPC
- vishnuch.tech: Interprocess Communication in Microservices 🌟 Different IPC methods in microservices like REST API, gRPC, Kafka, RabbitMQ, etc… which developers should know.
SOAP API Protocol (Simple Object Access Protocol)¶
- wikipedia: SOAP
- geeksforgeeks.org: Basics of SOAP – Simple Object Access Protocol
- For information about the latest work on SOAP and a full list of SOAP specifications refer to the W3C Technical Reports
- guru99.com: SOAP Web Services Tutorial: Simple Object Access Protocol. What is SOAP?
- jitendrazaa.com: Create SOAP message using Java
- dzone: Creating a SOAP Web Service With Spring Boot Starter Web Services In this post, we cover the concepts of SOAP and REST and show you all the code you need to use SOAP web services in a Spring Boot app.
REST API Protocol (Representational State Transfer)¶
- wikipedia: REST
- geeksforgeeks.org: REST API (Introduction)
- geeksforgeeks.org: REST API Architectural Constraints
- mulesoft.com: What is a RESTful API?
- Dzone refcard: Foundations of RESTful Architecture 🌟
- Dzone: REST API tutorials
OpenAPI Specification (originally known as the Swagger Specification)¶
- OpenAPI evolved from the Swagger project. Swagger started out as a specification for documenting RESTful APIs. Later on, tools to generate client and server code and generating of test cases were added. While the original Swagger Specification was donated to the Linux Foundation and renamed the OpenAPI, Swagger remains one of the most widely used open-source toolsets for developing OpenAPIs.
- Wikipedia: OpenAPI Specification 🌟
- OpenAPI FAQ. What is OpenAPI Specification (OAS)? OpenAPI Specification The OAS defines a standard, programming language-agnostic interface description for REST APIs, which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic.
- apis.guru/openapi-directory: large archive of sample OpenAPI descriptions
RPC API Protocol (Remote Procedure Call)¶
- wikipedia: RPC Remote Procedure Call
- open-rpc.org lightweight RPC framework 🌟 It layers an interface description on top of JSON-RPC 2.0 and ships with a few tools to help you design, document, and test your APIs.
- wikipedia: gRPC
- developers.googleblog.com: Introducing gRPC, a new open source HTTP/2 RPC Framework
- nordicapis.com: Using gRPC to Connect a Microservices Ecosystem
- cncf.io: Think gRPC, when you are architecting modern microservices!
- itnext.io: A minimalist guide to gRPC REST API is good but is it really the best option that we have?
- AsyncAPI Building the future of event-driven architecture. Open source tools to easily build and maintain your event-driven architecture. All powered by the AsyncAPI specification, the industry standard for defining asynchronous APIs.
- thenewstack.io: AsyncAPI Could Be the Default API Format for Event-Driven Architectures
SOAP vs REST¶
- geeksforgeeks.org: Difference between REST API and SOAP API
- dzone: A Comprehensive Guide to REST vs. SOAP Learn the primary differences between REST and SOAP APIs, each one’s benefits, and when it’s appropriate to use the two.
- dzone: Web Services Architecture – When to Use SOAP vs REST Learn why SOAP (Simple Object Access Protocol) and REST (Representation State Transfer) are popular with developers working on system integration projects.
- dzone: Comparing RESTful APIs and SOAP APIs Using MuleSoft as an Example
- reply.com: Web Services: SOAP and REST - A Simple Introduction
- SOAP is a communications protocol while REST is a set of architectural principles for data transmission.
- REST was designed to be a more straightforward and easy to implement alternative to heavyweight SOAP for web service access. SOAP functions well in distributed environments where REST assumes a direct point to point communication. Also, SOAP allows for services to describe themselves to clients and in some languages allows for automation. On the other hand, REST is fast as less processing is required, uses less bandwidth and is closer to technologies used in web design.
- The choice on which to use is totally dependent on what the requirement. For example, SOAP is a better choice for applications that have complex API so as to describe the services and methods, where formal contracts are agreed for the exchange format, where a guaranteed level of security is required etc. REST will be preferred when limiting bandwidth and resources, when operations are can be stateless and the information can be cached.
- baeldung.com: REST vs SOAP
REST vs OpenAPI vs gRPC¶
- REST vs. gRPC: Battle of the APIs
- Comparing OpenAPI With gRPC 🌟 OpenAPI is a great choice due to its interoperability. On the other hand, gRPC offers a better performance. Luckily, you don’t have to choose one or the other.
- imaginarycloud.com: gRPC vs REST: Comparing APIs Architectural Styles
REST vs GraphQL vs gRPC¶
- softwaretestingportal.com: API Testing, Key Terminologies and more…
- dzone.com: 10 API Testing Tips for Beginners (SOAP and REST) Let’s take a look at ten API testing tips for beginners with a focus on REST APIs and SOAP APIs.
- blog.testproject.io: Top 10 API Testing Tools to Watch in 2020 🌟
- mockoon 🌟 Create mock APIs in seconds. Mockoon is the easiest and quickest way to run mock API locally. No remote deployment, no account required, open source.
- thenewstack.io: 4 Essential Tools for Protecting APIs and Web Applications
- youtube: API Testing Part 1- API Core Concepts
- blog.testproject.io: API Testing 101 🌟
- microcks.io 🌟 Open source Kubernetes Native tool for API Mocking and Testing. If you are looking for a tool that helps in microservices API testing on Kubernetes it is worth taking a look at microcksio. It supports OpenAPI 3 and e.g. Kafka with Avro encoding
- tricentis.com: Getting started with automated continuous performance testing
- GraphQL A query language for your API
- How is the OpenAPI Specification different from GraphQL? How are screws better than nails? Both are useful tools that solve similar problems in slightly different ways. OpenAPI Specification offers a declarative contract that defines the structure of API requests and responses as discrete operations. GraphQL prefers an interface style that is more like querying a database and is best suited to graph databases.
- Hasura Launches Beta of GraphQL-Based Remote Joins Tool
- thenewstack.io: Why Backend Developers Should Fall in Love with GraphQL too
- blog.dream11engineering.com: Lessons learned from running GraphQL at scale
- world.hey.com: Another REST vs GraphQL comparison
- Hasura 🌟 Instant realtime GraphQL APIs for all your data
- Build modern apps and APIs 10x faster
- TickInstant GraphQL & REST APIs
- TickBuilt in authorization for secure data access
- TickOpen source
- devops.com: Web Application Security is not API Security 🌟
- biztechmagazine.com: 6 Steps to Improved API Security Application programming interfaces are critical to businesses. Tech leaders must do more to protect them.
Free Web Services (Public APIs)¶
- medium: Do I Need an API Gateway if I Use a Service Mesh? 🌟
- Dzone: How to Create a REST API With Spring Boot
- Dzone: Step-By-Step Spring Boot RESTful Web Service Complete Example
- Creando un API REST en Java (parte 1)
- dev.to: Rapid API Creation with AWS Amplify
- portal.dev Build beautiful API documentation. Portal lets you create, publish, and maintain your API docs with ease.
- openapi-comment-parser A clean and simple way to document your code for generating OpenAPI (Swagger) specs.
- Mux: The API to Video
API Business Models¶
Click to expand!
People complain about tooling fatigue but web dev in 2021 is 10x simpler than in 2011. You just gotta pick the right tools.— gunar.uk (@gunar) May 21, 2021
Frontend: @vercel's NextJS
And no proprietary bullshit—100% open source!