I bet the main reason why there haven’t been more videos like this lately is due to the whole gold-rush like event over the past two years where everyone under the sun wanted to cash in on becoming a developer quick and make 6 figures. So what do TH-camrs need to make to attract this new crowd? Not in-dept videos, beginner friendly videos. Surface level explanation videos.
@@user-oi9gi7kl2pIn this short video we learn little about each API type. And there is a multitude of other API styles and variations in use that aren't mentioned. I do wish he'd go into more depth-perhaps the compromise would be continuing the short intro videos like this, but then go into more depth in longer videos that branch off on one of each API type
To me, BBG is brilliant in this respect. There’s so much for us to know, learn, and keep up with. These are great mental “bookmarks” to point you towards pinpoint searches, to find the depth you need elsewhere. I get what you’re saying though. A great addition in this channel, would be links to in-depth, or just follow-up videos with more depth on each topic, alone. Then you could go down each rabbit hole from the high level video, as needed.
@@VincentJenks yeah man, these videos are helping me find which way should I go now. Actually, I work with API Gateway management but I'd like to improve my skills and these superficial videos help me a lot
the technologies on this page are at somewhat different layers of the protocol stack. SOAP is a pure encapsulation format (last I looked which was long ago) that can run on any transport, RESTful is HTTP-dependent, as is WebSocket, which does not define an encapsulation for transactions it just connects TCP sockets together on an HTTP proxy, gRPC is a protocol compiler meant to translate a language interface (think of it like a C++, Python, or Java interface) into the code to create the binary bits on the wire (or wireless), a process called marshalling or serialization / de-serialization. gRPC is transport independent but typically runs on TCP or UDP. GraphQL is a language that can specify json schema queries and it can minimize large transactions on the connection - good for phones or bandwidth-limited devices.
Don't be so purist, this is just a light explanation of architectural API styles, not an indeep study where you must talk about SOAP transport independence for example.
Amazing video for an overview understanding of different API styles. I am a Data Engineer with 3 years of experience and I got a similar question on why I used REST API instead of SOAP or any other APIs. This video helped me there to explain my POV. Huge respect to the content creator who seamlessly explained all the 6 concepts in a niche manner!
Amazing animations and outstanding explanations. I wish I had this sort of educational videos years ago! Thank you very much for sharing this. You have earned a new follower!
This is a surprise. I was debating with myself whether to watch this video because I was worried that it might go right over my head. I am happily surprised by how understandable it was!
There's also Serverside events. Which may not be an architecture for API but it does opens up an option to send unidirectional data without having to touch websockets
I believe you might be conflating API architectures with API implementations. For instance, GraphQL could be categorized along with any variant of SQL or Redis commands, as they all facilitate data retrieval using a query language. Similarly, WebSocket could be grouped with other session-oriented, two-way communication alternatives, such as basic TCP sockets, or you could hava mentioned various flavors of RPC. Additionally, RESTful and SOAP could be classified together under the umbrella of web services that employ the request/response pattern. Webhooks may possibly fit into this same category, although I'm not entirely certain. Lastly, you appear to have omitted queuing or messaging/queuing systems like Apache Kafka (very popular).
Insightful breakdown of API architecture styles! Appreciate the concise overview. Valuable resource for understanding different approaches to building APIs. Thanks for sharing!
Awesome video and tutorial!! I really appreciate the way you break these architectures down so that I can get a great high level understanding of them!! Outstanding! Be well, be safe and Cheers!
I'd like to add one note on websockets and webhooks. Webhooks require for the subscribers to be accessible (ie: not hidden behind a gateway) for the publisher to contact them. Websockets dont have this problem, as the subscribers are initiating the connection. Because of that, websocket is also a good solution for async events notification when the subscribers are not accessible / "open to the web" machines
Great videos to explain about the distinction between API styles. However I am not sure if WebHook is an API style. It is more like notification or part of event-driven architecture and usually implemented using RESTful API. Also, WebSocket is more like a communication protocol rather than "API".
Missing one of the most important API architecture style: PubSub messaging architecture. This is typically found in IoT applications using protocols such as MQTT. It can also be found as communication style between micro services.
You wouldn’t use websockets directly as a pub/sub. You’d have to implement something on top of that. MQTT uses websocket as an underlying protocol to communicate with browser applications. In a distributed architecture you can also use other Pub/Sub mechanisms like Kafka or RabbitMQ.
The first four are great! WebSocket is not really an API style, it's a raw data connection (hence the name "socket" referring to Unix sockets). Webhooks are one specific example for a bigger set of APIs in a style called "Event-oriented". The Five API Styles: th-cam.com/video/bWFXGHXo_pY/w-d-xo.html
Great distinctions, It's a unique video. Thanks for clearing these out. Additionally, can you present them in clear distinct points based differences on a single TABLE for all these APIs under various grounds? Because it looks like some of them overlap one another under certain criteria. It will be great to have a clear point based differentiation represented on a table! Thanks. It will be great to see them stand together while comparing before the eyes under various domain based scenarios & environments. Thanks 👍
Other issues with graphql is lack of caching, and your frontend and backend become very tightly coupled as changing property names means you have to update both. This becomes even nore trouble if you have more frontends
Yeah, actually problems with caching defeats the argument about it being "more efficient", because depending on the app, you could make it many times less efficient instead
The explanation with meaning animations made the concepts to understand easily like.👍 curiuos to know what tool/software being used to make these animations?
The animations truly convey meaning and not extraneous
This takes a lot of skill to get right
Kudos
So true... +1000 for your comment
Everyone will agree, for a true Software Engineer, this channel is the most fruitful & addictive drug to learn new concepts in a crystal-clear manner.
speak for yourself, you id.ot
I am absolutely impressed with the simple, clear, and elegant illustrations! It’s superb! Thank you for sharing.
I really miss in-depth videos :(
YES WE DO
I bet the main reason why there haven’t been more videos like this lately is due to the whole gold-rush like event over the past two years where everyone under the sun wanted to cash in on becoming a developer quick and make 6 figures. So what do TH-camrs need to make to attract this new crowd? Not in-dept videos, beginner friendly videos. Surface level explanation videos.
@@user-oi9gi7kl2pIn this short video we learn little about each API type. And there is a multitude of other API styles and variations in use that aren't mentioned. I do wish he'd go into more depth-perhaps the compromise would be continuing the short intro videos like this, but then go into more depth in longer videos that branch off on one of each API type
To me, BBG is brilliant in this respect. There’s so much for us to know, learn, and keep up with. These are great mental “bookmarks” to point you towards pinpoint searches, to find the depth you need elsewhere.
I get what you’re saying though. A great addition in this channel, would be links to in-depth, or just follow-up videos with more depth on each topic, alone. Then you could go down each rabbit hole from the high level video, as needed.
@@VincentJenks yeah man, these videos are helping me find which way should I go now. Actually, I work with API Gateway management but I'd like to improve my skills and these superficial videos help me a lot
the technologies on this page are at somewhat different layers of the protocol stack. SOAP is a pure encapsulation format (last I looked which was long ago) that can run on any transport, RESTful is HTTP-dependent, as is WebSocket, which does not define an encapsulation for transactions it just connects TCP sockets together on an HTTP proxy, gRPC is a protocol compiler meant to translate a language interface (think of it like a C++, Python, or Java interface) into the code to create the binary bits on the wire (or wireless), a process called marshalling or serialization / de-serialization. gRPC is transport independent but typically runs on TCP or UDP. GraphQL is a language that can specify json schema queries and it can minimize large transactions on the connection - good for phones or bandwidth-limited devices.
Don't be so purist, this is just a light explanation of architectural API styles, not an indeep study where you must talk about SOAP transport independence for example.
Amazing video for an overview understanding of different API styles. I am a Data Engineer with 3 years of experience and I got a similar question on why I used REST API instead of SOAP or any other APIs. This video helped me there to explain my POV.
Huge respect to the content creator who seamlessly explained all the 6 concepts in a niche manner!
Dear Alex, You are one of the best programmers and teacher I have seen till now on TH-cam.
Amazing animations and outstanding explanations. I wish I had this sort of educational videos years ago! Thank you very much for sharing this. You have earned a new follower!
You were very clear, visibly clear, and straight to the point. Thanks for this video and explanation.
This is awesome, the animation is meaningful and helpful while also being pleasing to the eye. Thank you!
Very good, concise and accurate explanation of the most frequently used types of APIs. Awesome job! I'll be directing my students to your site. 👍
This is a surprise. I was debating with myself whether to watch this video because I was worried that it might go right over my head. I am happily surprised by how understandable it was!
Loved this! I am not heavily involved with APIs but wanted to learn more. This was perfect. Thanks!
i cannot appreciate this channel enough. ❤️
There's also Serverside events. Which may not be an architecture for API but it does opens up an option to send unidirectional data without having to touch websockets
Within multiple separate services? Isnt that just websockets?
great video. Simple easy to understand, straight to the point
Thanks for the recommendation. I added both books to my Amazon reading list.
Thanks for making high quality education video free
Beautiful animations!! Amazing commentary that really compares so well.
I believe you might be conflating API architectures with API implementations. For instance, GraphQL could be categorized along with any variant of SQL or Redis commands, as they all facilitate data retrieval using a query language. Similarly, WebSocket could be grouped with other session-oriented, two-way communication alternatives, such as basic TCP sockets, or you could hava mentioned various flavors of RPC. Additionally, RESTful and SOAP could be classified together under the umbrella of web services that employ the request/response pattern. Webhooks may possibly fit into this same category, although I'm not entirely certain. Lastly, you appear to have omitted queuing or messaging/queuing systems like Apache Kafka (very popular).
Insightful breakdown of API architecture styles! Appreciate the concise overview. Valuable resource for understanding different approaches to building APIs. Thanks for sharing!
Awesome video and tutorial!! I really appreciate the way you break these architectures down so that I can get a great high level understanding of them!! Outstanding! Be well, be safe and Cheers!
Please make more videos. You're literally the GOAT
I'd like to add one note on websockets and webhooks.
Webhooks require for the subscribers to be accessible (ie: not hidden behind a gateway) for the publisher to contact them. Websockets dont have this problem, as the subscribers are initiating the connection.
Because of that, websocket is also a good solution for async events notification when the subscribers are not accessible / "open to the web" machines
This is straight forward and clear
Spot on. Short, clear, and understandable. Congrats
Great content. Succinct, with very helpful illustrations. Well done! You have a new subscriber
Thank you so much for such an informative video, This will help upcoming engineers understand when to use what.
There is also tRPC and OData. WebSocket is not really a style, else you should include SSE.
I am overwhelmed by this video Thank you so much
Perfect, but there is also Event Source which is mainly used for notifications system (push) one direction from server to client.
appreciate your effort in bringing these videos, simplifying concepts, kudos to your work!
wonderful Sir, You doing great Job, I always loves to watch your videos
Great videos to explain about the distinction between API styles. However I am not sure if WebHook is an API style. It is more like notification or part of event-driven architecture and usually implemented using RESTful API. Also, WebSocket is more like a communication protocol rather than "API".
Great Video and Animations are very understandable
great succinct straight to the point no fluff... excellent content! subbed.
I really love your graphics! ❤ It's one of the reasons I just watch them one by one. :-))
Thank you .. please give us some examples to deeply understand how to use API's
Really helpful the way this was explained thankyou!
Thank you. It helps to understand the basic differences.
Thank you - this was so helpful!!!
I am from Brazil. I loved your video!!!
Missing one of the most important API architecture style: PubSub messaging architecture. This is typically found in IoT applications using protocols such as MQTT. It can also be found as communication style between micro services.
So... websockets?
You wouldn’t use websockets directly as a pub/sub. You’d have to implement something on top of that. MQTT uses websocket as an underlying protocol to communicate with browser applications. In a distributed architecture you can also use other Pub/Sub mechanisms like Kafka or RabbitMQ.
You are going to be a big channel, lots of love and support ❤
Keep up the great work
Great & informative ! Thank u.
The first four are great! WebSocket is not really an API style, it's a raw data connection (hence the name "socket" referring to Unix sockets). Webhooks are one specific example for a bigger set of APIs in a style called "Event-oriented". The Five API Styles: th-cam.com/video/bWFXGHXo_pY/w-d-xo.html
YES, lots of people use WebSocket to connect but running restful APIs
Same with Graphql. It's really just an extension of HTTP since it still relies on POST calls with a payload.
It is said API Architecture Style, so it's not necessarily "API builder" but a designing a way of communication between parties, i.e. client - server
I use Restful & Webhook in my software.
Thanks for this video
"SOAP is used in old systems that nobody wants to pay to update to anything resembling modern applications"
Thanks for the quality content.
Alex, you are amazing~
these architectures are protocols, right?
and thank you for sharing this!
great explanaition, thanks!
Wonderful video!! TYSM 👐
great video, thanks
Great distinctions, It's a unique video. Thanks for clearing these out. Additionally, can you present them in clear distinct points based differences on a single TABLE for all these APIs under various grounds? Because it looks like some of them overlap one another under certain criteria. It will be great to have a clear point based differentiation represented on a table! Thanks. It will be great to see them stand together while comparing before the eyes under various domain based scenarios & environments. Thanks 👍
bro i love your brain, thank u for this !!!
Great Explanation!! What tools did you use to create the animations?
Great summary ✅
The best video. It would be great if you could please provide an in-depth video on the network OSI model.
👍Great video! Thanks for sharing...
Never regret subscribing your channel great content 🎉🎉🎉🎉
Thank you very good summary🙂
Excellent explanation, simple and clear.
Perfect. Thanks!
Cool, thanks for explanation!
Very helpful and to the point, thank you for this excellent content!
Thanks bro, it's very useful information.
Great job at explanation and presentation
Top-notch explanations
Real nice! Thank you :)
Other issues with graphql is lack of caching, and your frontend and backend become very tightly coupled as changing property names means you have to update both. This becomes even nore trouble if you have more frontends
Yeah, actually problems with caching defeats the argument about it being "more efficient", because depending on the app, you could make it many times less efficient instead
Clean, neat, and to the point.
I have been working for financial services for almost 15 years and in my experience, SOAP is 100% obsolete now. It is mostly replaced by REST
Cool ! Thank you.
Great video! Bravo!
Thanks for the useful information
Just amazing.
Good video, to the point
Love the animations !
How did you build these beautiful animations??
Super good movie. Thx a lot.
Love this!
You sir have helped me understand a lot of things. Love the channel
Outstanding video as usual! Please arrange another video for data migration strategies
Thanks always.
视频动画真的不错。谢谢Alex!!
I do like these videos!
Thanks for this
Excellent!
GraphQL just sounds like a regular sql select query, but I assume it's much more behind it than that.
Woooow, powerful video ❤
Amazing stuff
are SOAP really for enterprise or just because entrerprise has this as legacy implementation?
Thank you so much for sharing your knowledge :)
What about Server Sent Events? Can we consider it as API Architecture Style?
Love the animated diagram!
Thank you.
Great video!
Great animations! (for curiosity are you using Manim for animation?)
The explanation with meaning animations made the concepts to understand easily like.👍 curiuos to know what tool/software being used to make these animations?
A damn good video... This is a damn good video!