Open APIs

Expand all | Collapse all

What is the difference between an API and SOA

  • 1.  What is the difference between an API and SOA

    Posted Sep 14, 2017 02:48
    Edited by Saanvi Sep 21, 2017 09:21

    There are a lot of What is the difference between... questions out there but I couldn't find this one.

    Wikipedia says this about an API

    An application programming interface (API) is a source code-based specification intended to be used as an interface by software components to communicate with each other.

    And this about SOA

    SOA also generally provides a way for consumers of services, such as web-based applications, to be aware of available SOA-based services.

    Aren't both technologies where you present services to other services?
    Could someone expand on this?


  • 2.  RE: What is the difference between an API and SOA

    TM Forum Member
    Posted Sep 14, 2017 02:51



    Can please provide the context of question, some portion of question is blacked, so not able to read it ?


    Best regards,

    Kapil Kushwaha

    +91 9717536222


  • 3.  RE: What is the difference between an API and SOA

    Posted Sep 15, 2017 00:56
    There is no difference - both can be designated as API's but modern API's are resource based and more fine - micro based. SOA is heavy while modern API's are light weight.. there are several other reasons...

    What is the context of your question ?


  • 4.  RE: What is the difference between an API and SOA

    TM Forum Member
    Posted Sep 18, 2017 02:38

    SOA emerged in the early 2000, and can be defined as an architecture pattern based on the concept of business service. Each application is considered through the business services it provides to other applications. SOA is consequently a model of distributed architecture, where all the applications collaborate through business services, in a supplier / consumer relationship.
    So, this is the theory, and in practice, SOA was widely implemented with SOAP Web Services and XML grammar. Many people make the confusion between SOA and SOAP, although one is the "what", and the other the "how".
    Now, if you consider API, it is a technical pattern which originally came from the Web developpers, in order to provide API over internet for Web and mobile applications. An API is implemented over REST protocol, and generally with JSON grammar.
    If you look at what an API is, you will find again the concept of business service, but in a slightly diffrent approach compared to SOAP : API tend to expose business objects (this is the concept of resources) and standard verbs to deal with them (GET, PUT, POST...) whereas SOAP exposes custom verbs (eg : getCustomerOrder, updateCustomerOrder).
    So, to conclude, API is quite diffrent from SOAP, but both implement SOA concepts.
    Today, API is more and more popular, mainly because it is simpler and lighter than SOAP.

    Matthieu LEMOINE
    Senior Enterprise Architect
    Sopra Steria - Telecom, Media & Entertainment

  • 5.  RE: What is the difference between an API and SOA

    Posted Sep 18, 2017 09:06
    Edited by Saanvi Sep 18, 2017 09:06
    Thank you



  • 6.  RE: What is the difference between an API and SOA

    TM Forum Member
    Posted Nov 10, 2017 12:29
    ​Hi there

    API means Application Program Interface. It was introduced a lot of years ago to designate such programs that allowed the communication between different systems. So, technically you can find such sort of Female Plugs in several operating systems and Legacy Systems. Microsoft made APIs so popular around Windows, there are a bunch of APIs that allow to communicate with the Windows Operating System. Some Software manufacturers who refused to allow direct connection sometimes and other with the aim to facilitate interconecction with their appliances or systems, usually provide APIs for such communications. For instance you can use a Receipt Printer and the program that uses the printer should use the Printer´s API to instruct the printer to execute especific actions. In the end, the API authorizes the user to perform a limited number of operations in the core system that publishes the API.

    Meanwhile, SOA itself is a concept of sofware Architecture. It means Service Oriented Architecture. Its objective is to implement a software platform, usually called Service BUS, where Software Chips or Software programs are registered to provide specific functionality for the user that calls the program, usually called Service. Here you can find a differencebetween pure API programs and Service Programs. To access any API, usually you do not need more rights that be in the same platform and network rigths, but for SOA, access rights are complex and usually involves http protocol in the middle. This is because the internet protocol allows for easy access to remote Services. As the SOA concept and artifacts grown up, it was clear that APIs could make use of Service Buses, because if you remember, APIs are programs and SOA is an architectural concept. One of SOA components is the service BUS where any API that is built observing the BUS specifications can be published for public use.

    Juan Flores
    Telefonica Ecuador / Otecel S.A.