Both SOAP and REST are web services that allows machine-to-machine communications. They are API that allow your application to interact with another application.

SOAP (Simple Object Access Protocol)

  • More structured.
  • Only XML.
  • More complexity and overhead in getting a connection setup.
  • Comes with definitions that allows you to generate classes/objects in your application.
  • Multiple application layer protocol like HTTP, SMTP, TCP, or UDP.
  • Security, authorization, and error-handling are built into the protocol.
  • Used in enterprise-level web services that require high security and complex transactions such as financial services and payment gateways.

REST (Representational State Transfer)

  • More lightweight, flexible, and better performance.
  • Allows different messaging formats, the most common being JSON.
  • Accessed via URI.
  • Only HTTP operations, GET, POST, PUT, DELETE.
  • Statelessness – each request should contain all the information needed for server to process the request.
  • API calls be cached.
  • Public APIs for web services, mobile services, and social networks.
High security, standardized, extensibility.

Scalability, better performance, browser-friendliness, flexibility.
Poorer performance, more complexity, less flexibility. Less security, not suitable for distributed environments.


Last modified: March 22, 2019



Write a Reply or Comment