Comparing web API types: SOAP, REST, GraphQL and RPC

แชร์
ฝัง
  • เผยแพร่เมื่อ 3 มิ.ย. 2024
  • Building a web API, developers need to pick the right API paradigm first. The choice among RPC, REST, GraphQL, or SOAP specification will dictate the way of your client-server communication.
    We're overviewing the core principles of each, its strengths and weaknesses against the three others to help you differentiate among them and see the cases in which each API paradigm will fit better.
    0:00 Different forms of API
    0:45 RPC
    2:23 SOAP
    4:51 REST
    5:52 REST constraints
    9:33 The con of REST - chattiness
    10:23 GraphQL
    12:25 Drawing a line
    13:03 Messaging between systems
    Check our article to learn more about the API Types: www.altexsoft.com/blog/soap-v...
    Learn more about AltexSoft: www.altexsoft.com
    Follow us on LinkedIn: / altexsoft
    Follow us on Facebook: / altexsoft
    Follow us on Twitter: / altexsoft
    Music in video:
    Triana by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Our Son the Potter by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Two Dollar Token by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Story Four - Theme by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial-NoDerivatives 4.0 International License. (creativecommons.org/licenses/...)
    Flutterbee by Podington Bear (www.soundofpicture.com/) is licensed under a Attribution-NonCommercial 3.0 International License.(creativecommons.org/licenses/...)
    Pives And Flarinet by Podington Bear (www.soundofpicture.com/) is licensed under a Attribution-NonCommercial 3.0 International License.(creativecommons.org/licenses/...)
    Barefoot by Chad Crouch (www.soundofpicture.com/) is licensed under a Attribution-NonCommercial 3.0 International License.(creativecommons.org/licenses/...)
    Confidence Trick by Chad Crouch (www.soundofpicture.com/) is licensed under a Attribution-NonCommercial 4.0 International License.(creativecommons.org/licenses/...)
    Buzzy Minuet by Chad Crouch (www.soundofpicture.com/) is licensed under a Attribution-NonCommercial 4.0 International License.(creativecommons.org/licenses/...)
    Flatlands 2nd by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Bon Journée by Chad Crouch (www.soundofpicture.com/) is licensed under a Attribution-NonCommercial 3.0 International License.(creativecommons.org/licenses/...)
    Myrian by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Chat by Chad Crouch (www.soundofpicture.com/) is licensed under a Attribution-NonCommercial 4.0 International License.(creativecommons.org/licenses/...)
    Step In Step Out by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Brad PKL by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Claudette by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Brek PKL by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Cach PKL by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Single-player by Chad Crouch (www.soundofpicture.com/) is licensed under a Attribution-NonCommercial 4.0 International License.(creativecommons.org/licenses/...)
    Dany PKL by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Friction Model by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
    Talltell by Blue Dot Sessions (www.sessions.blue) is licensed under a Attribution-NonCommercial 4.0 International License (creativecommons.org/licenses/...)
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 81

  • @AltexSoft
    @AltexSoft  3 ปีที่แล้ว +11

    Sources:
    [ 1 ] xml-rpc.com
    jsonrpc.org
    grpc.io/
    [ 2 ] www.tutorialspoint.com/soap/soap_envelope.htm
    [ 3 ] facebook.com/altexsoft/posts/2463168813706531
    [ 4 ] developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_quickstart_intro.htm
    [ 5 ] www.restapitutorial.com/lessons/restfulresourcenaming.html
    stackoverflow.com/questions/54653110/rest-data-format
    [ 6 ] developers.booking.com/api/commercial/index.html?version=2.7&page_url=usage-information
    [ 7 ] telegram.org/faq#:~:text=Telegram%27s%20special%20secret%20chats%20use,on%20their%20devices%20of%20origin.
    [ 8 ] 100daysdx.com/28/
    [ 9 ] engineering.fb.com/2015/09/14/core-data/graphql-a-data-query-language/
    [ 10 ] graphql.org/learn/schema/
    www.apollographql.com/docs/tutorial/schema/
    lucasconstantino.github.io/graphiql-online/
    [ 11 ] www.assurantlabs.com/blog/2020/02/23/graphql-in-mobile-development/#related-benefits-of-graphql--libraries
    [ 12 ] graphql.org/users/
    [ 13 ] www.altexsoft.com/blog/engineering/what-is-soap-formats-protocols-message-structure-and-how-soap-is-different-from-rest/
    [ 14 ] www.canadapost.ca/cpo/mc/business/productsservices/developers/codesamples.jsf
    www.canadapost.ca/cpo/mc/business/productsservices/developers/soap/codesamples.jsf

    • @ArquimedesOfficial
      @ArquimedesOfficial ปีที่แล้ว +3

      High quality work, even has the refs...thanks!

  • @jimmymemon
    @jimmymemon ปีที่แล้ว +36

    Whoever is making these videos. Please never stop. It's hard to find such sleek and useful content. Your channel is a hidden gem.

  • @ciocasado8980
    @ciocasado8980 3 ปีที่แล้ว +41

    I feel that a lot of effort was made when creating this video. Pretty good content!

  • @magdastein5580
    @magdastein5580 3 ปีที่แล้ว +5

    struggled a bit with all the api types - but this video gave me the insight I needed

  • @Kikis9311
    @Kikis9311 ปีที่แล้ว +1

    У вас такий крутий канал і контент увесь по суті, а не переливання з пустого в порожнє! Дякую за вашу роботу!!!

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว

      Дякуємо :)

  • @jessemcelroy5266
    @jessemcelroy5266 ปีที่แล้ว +1

    I have had a hard time finding information on just a birds eye view of the different types of API technology and how they basically work until I watched this video which is the best I have ever seen on this topic by far.

  • @kademo3258
    @kademo3258 2 ปีที่แล้ว +1

    I took me more then an hour to watch this video along with goggling some things mentioned in it and making notes. It is sooo good. Thank you

  • @alexwhaibe
    @alexwhaibe 2 ปีที่แล้ว +2

    Amazing video. I’ve been searching for a simple explanation like this. I don’t know why there is only info about REST

  • @kurianjpanjikaran8366
    @kurianjpanjikaran8366 ปีที่แล้ว +1

    Excellent content which clearly explains the different forms of API and why each of these came into existence over time. Great work!!

  • @MrKodsine
    @MrKodsine 3 ปีที่แล้ว +2

    Really well-presented! Thank you, easy to follow by non-technical people too :)

  • @akashagarwal6390
    @akashagarwal6390 3 ปีที่แล้ว +2

    Best gem on youtube. Pls keep doing videos like this. Nothing more nothing less.

  • @pybokeh
    @pybokeh 3 ปีที่แล้ว +1

    Great video! Wished it went into more detail with gRPC, PROs/CONs were not discussed.

  • @timgo2345
    @timgo2345 2 ปีที่แล้ว +1

    Terrific video and explanations. Thank you

  • @alexsav7427
    @alexsav7427 2 ปีที่แล้ว +1

    Very good explanation.
    This video contains many articles with sometimes vague answers in one flask

  • @pixelmasque
    @pixelmasque 11 หลายเดือนก่อน

    that was excellent. I now feel confident not just understanding API but their history and pro`s and cons. thank you

  • @mona.supremacy
    @mona.supremacy 3 ปีที่แล้ว +20

    I love how those animations are designed, but I've found it difficult to focus at her voice because the music is constantly changing, turning off and on all the time, plus I'd lower its volume.
    The content itself is conscise, well presented and reliable. I'll stay subscribed for more, indeed 👍

    • @n8ged8
      @n8ged8 ปีที่แล้ว

      After watching the video I just know that there was (annoying) music in it.
      Maybe some kind of autistic problem not being able to focus on the voice while filtering out the music?

  • @akshaykhurana4152
    @akshaykhurana4152 2 ปีที่แล้ว

    Good content and the presentation was lovely. Will be staying tuned to the channel for sure.

  • @franciscocarneiro
    @franciscocarneiro ปีที่แล้ว +1

    Amazing vid. It goes to the point. Thanks for sharing. I can really see you made a great effort to create this content.

  • @billbosanquet4367
    @billbosanquet4367 3 หลายเดือนก่อน

    Excellent. Full of useful information, concisely put with no waffle. Great Job 👍

  • @kunmiamzat929
    @kunmiamzat929 ปีที่แล้ว

    Used to think api was a kind of module to you needed. Now this cleared things up for me.
    👍

  • @higiniofuentes2551
    @higiniofuentes2551 3 หลายเดือนก่อน

    Wow thank you for this very useful video!
    Best explanation ever!

  • @reiskoryphae
    @reiskoryphae 2 ปีที่แล้ว

    OMG this video explained so many of my Questions about rest, grapql etc.
    The animations and the video cut is top-notch too.
    This comment may seem ironic or exaggerating, but I really am presently surprised. 😭

  • @paulofernandoee
    @paulofernandoee 2 ปีที่แล้ว

    Outstanding video, congratulations and thank you

  • @vinodcs80
    @vinodcs80 หลายเดือนก่อน

    Thank you lot of information shared Ina comprehensive way

  • @yadugna
    @yadugna 2 ปีที่แล้ว

    What a presentation! great and clear one

  • @ashishpolinati4892
    @ashishpolinati4892 ปีที่แล้ว +1

    Your videos are absolutely spot on the topic with a sleek representation of content. The travel industry based explanation is a cherry on top. Keep going guys!

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว

      Much appreciated for such lovely feedback, thanks

  • @hichamlotfi3668
    @hichamlotfi3668 2 ปีที่แล้ว

    great work explaining this topic

  • @jagdeepsinghuppal8310
    @jagdeepsinghuppal8310 ปีที่แล้ว +2

    All anyone can ask for is learning content as good as in this video. ♥️ Love it.

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว +1

      Thanks for your feedback, really appreciate it ❤️

  • @muhammadumarrahimjonov2340
    @muhammadumarrahimjonov2340 ปีที่แล้ว

    Excellent and really helpful content.

  • @carloss2202
    @carloss2202 ปีที่แล้ว

    THANKS , great and simple explanation for a beginner

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว

      Glad you liked it

  • @user-eo1li1mv7y
    @user-eo1li1mv7y 2 ปีที่แล้ว

    Absolutely loving this great video!

  • @godismygeneral
    @godismygeneral ปีที่แล้ว

    Amazingly clear video keep making this!

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว

      Glad you enjoyed the video, thank you for the feedback)

  • @BlaBlaBlaInDaHouse
    @BlaBlaBlaInDaHouse ปีที่แล้ว +1

    Fantastic video, thank you for your effort!

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว

      Happy to hear that you found our video fantastic, thank you for the feedback ❤️

  • @wilkat83
    @wilkat83 2 ปีที่แล้ว

    This was great. Thank you!!

  • @dsebastien
    @dsebastien 2 ปีที่แล้ว

    Congratulations, this is excellent content! :)

  • @shafieesadegh
    @shafieesadegh 2 ปีที่แล้ว

    very well made. thanks

  • @shubhmishra3338
    @shubhmishra3338 2 ปีที่แล้ว +1

    Excellent video!

  • @greed7513
    @greed7513 ปีที่แล้ว

    cool, just what I needed to know. Thanks.

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว

      Glad to help 😊

  • @aditya0191
    @aditya0191 ปีที่แล้ว

    Super helpful video

  • @pss_crs
    @pss_crs 3 ปีที่แล้ว

    You underrated rpc and protopuf in my opinion.

  • @aliseyyidoglu9686
    @aliseyyidoglu9686 ปีที่แล้ว +1

    Thank you

  • @akhilk5121
    @akhilk5121 3 ปีที่แล้ว

    Such an awesome video!

  • @bmcseal01
    @bmcseal01 ปีที่แล้ว

    succinctly explained!

  • @alexeyshevelyov1163
    @alexeyshevelyov1163 2 ปีที่แล้ว +2

    Is encrypting each message that big of a benefit of SOAP if you already using SSL, which essentially does that same thing but just for the whole payload?

  • @sabuein
    @sabuein ปีที่แล้ว

    Thank you.

  • @sanchitsingh7089
    @sanchitsingh7089 2 ปีที่แล้ว

    this was beautiful

  • @leviiiiiiii3019
    @leviiiiiiii3019 2 ปีที่แล้ว

    Best video I've seen

  • @germancocca958
    @germancocca958 ปีที่แล้ว

    Awesome content!

  • @namitasatpathy
    @namitasatpathy 2 ปีที่แล้ว

    great content

  • @olegkikhtov7040
    @olegkikhtov7040 2 ปีที่แล้ว

    Well done!

  • @waymanharris1284
    @waymanharris1284 2 ปีที่แล้ว

    Great job!!!

  • @Karthikeyansundar-rl5ym
    @Karthikeyansundar-rl5ym 11 หลายเดือนก่อน

    Sooo….soooo…. gooood 👌👌👌👌👌

  •  2 ปีที่แล้ว

    Excelent

  • @priyankadey3559
    @priyankadey3559 2 ปีที่แล้ว

    Somehow sharing on LinkedIn gives a 414 error response. Gets difficult to share it.

  • @akhilk5121
    @akhilk5121 3 ปีที่แล้ว

    Talking about WS-SECURITY, it's stated that, the encrypted body can only be accessed if you have a token in header. How is this different from using OAuth or any token based security in REST?

    • @AltexSoft
      @AltexSoft  3 ปีที่แล้ว +2

      SOAP WS-security includes the mechanisms for encrypting the whole message. OAuth and JWT are authorisation mechanisms. They aren’t designed for message encryption and you have to find your own ways to encrypt the message body or use an SLL/TLS protocol when sending the message.

    • @akhilk5121
      @akhilk5121 3 ปีที่แล้ว

      @@AltexSoft Thanks for the clarification & awesome video!

  • @MrAdediji
    @MrAdediji 3 ปีที่แล้ว

    My only complaint about this video is that the background music was soo good I kept getting distracted lol
    .

  • @MarkWusinich
    @MarkWusinich 3 ปีที่แล้ว +1

    I thought learning curves were amount learned (Y axis) and time to learn (X axis) so a shallow learning curve would be something hard to learn (lots of time to get more info) and a steep learning curve would be easier (less time to learn more info). But I could be wrong.

    • @magdastein5580
      @magdastein5580 3 ปีที่แล้ว +1

      it just refers to that you have to learn a lot -> lots of incline; whereas a shallow learning curve means that you do not have to learn that much to understand. the time, in my opinion, is no object in this allegory

    • @MarkWusinich
      @MarkWusinich 3 ปีที่แล้ว

      @@magdastein5580 I have always struggled with this. But I like it. So the Y axis goes from zero learned to easy to learn, medium to learn and hard to learn. Where as I was thinking it went from learning zero of the material, to 100% of the material.

  • @panTadzik
    @panTadzik ปีที่แล้ว

    Background music incoming in 7:20 is killing me XD

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว

      Don't die, better dance 💃

  • @SaifaldeenSAH
    @SaifaldeenSAH 2 ปีที่แล้ว

  • @mohmedasrarkhodawala8144
    @mohmedasrarkhodawala8144 3 ปีที่แล้ว

    Which API used by GDS systems?

    • @AltexSoft
      @AltexSoft  3 ปีที่แล้ว +2

      It depends on the specific API you need. GDSs offer separate APIs for checking flight status or seat canceling. Sabre mostly uses SOAP and REST APIs. The same goes to Amadeus. Travelport provides SOAP and XML APIs.
      You can find the required API by the links:
      developer.sabre.com/product-catalog?f%5B0%5D=product_type%3Asoap_api_reference
      newmy.travelport.com/web/developer/travelport-universal-api
      developers.amadeus.com/

    • @mohmedasrarkhodawala8144
      @mohmedasrarkhodawala8144 3 ปีที่แล้ว

      @@AltexSoft Thank you...

  • @MasterSergius
    @MasterSergius 2 ปีที่แล้ว

    So, SOAP - a bit improved XML-RPC? And REST is a RPC over HTTP? And so on... Everything is RPC?

  • @muhammadumarrahimjonov2340
    @muhammadumarrahimjonov2340 ปีที่แล้ว

    Excellent and really helpful content.

  • @shaunvonermirzo7581
    @shaunvonermirzo7581 ปีที่แล้ว

    great content

    • @AltexSoft
      @AltexSoft  ปีที่แล้ว

      Thanks for feedback ☺️

  • @muhammadumarrahimjonov2340
    @muhammadumarrahimjonov2340 ปีที่แล้ว

    Excellent and really helpful content.