Table of Contents What’s Web Service? Why Web Service? Architecture Overview XML SOAP WSDL NetSuite Web Service
What’s Is Web Service? Web services are application programming interfaces(API) or Web APIs that are accessed via someprotocols like HTTP. “Software application identified by a URI, whoseinterfaces and bindings are capable of beingdefined, described, and discovered as XML artifacts”– W3C Web Services ArchitectureRequirements, Oct. 2002
Why Web Services? Allow companies to reduce the cost of doing e-business, to deploy solutions faster Need a common program-to-program communicationsmodel Allow heterogeneous applications to be integratedmore rapidly, easily and less expensively Facilitate deploying and providing access to businessfunctions over the Web
XML XML Inherited from SGML which is a markuplanguage like HTML. XML stands for Extensible Markup Languagebecause we can Extend its capability. XML uses parser to decode the file content.Example :- <?xml version="1.0"?> <note> <to>Receiver</to> <from>Sender </from> <heading>Reminder</heading> <body>Message Body!</body> </note>
SOAP: Simple ObjectAccess Protocol What is SOAP? SOAP is a communication protocol SOAP is for communication between applications SOAP is a format for sending messages SOAP is designed to communicate via Internet SOAP is platform independent SOAP is language independent SOAP is based on XML SOAP is simple and extensible SOAP will be developed as a W3C standard
SOAP Message Structure Request and Response messages Request invokes a method on a remoteobject Response returns result of running themethod SOAP specification defines an“envelop” “envelop” wraps the message itself Message is a different vocabulary Namespace prefix is used to distinguishthe two partsApplication-specificmessage vocabularySOAP Envelopvocabulary
Web Services Description Language What is WSDL? WSDL is written in XML WSDL is an XML document WSDL is used to describe Web services WSDL is also used to locate Web services WSDL is not yet a W3C standard Operational information about the service Location of the service Service interface Implementation details for the service interface
WSDL Document Structure (1/2) <portType> element Defines a web service, the operations that can beperformed, and the messages that are involved <message> element Defines the data elements of an operation consists of one or more parts. The parts can be compared to the parameters of afunction call in a traditional programming language
WSDL Document Structure (2/2) <types> element Defines the data type that are used by the webservice For maximum platform neutrality, WSDL uses XMLSchema syntax to define data types <binding> element Defines the message format and communicationprotocols used by the web service
Web Service Model (2/3) Roles in Web Service architecture Service provider Owner of the service Platform that hosts access to the service Service requestor Business that requires certain functions to be satisfied Application looking for and invoking an interaction with aservice Service registry Searchable registry of service descriptions where serviceproviders publish their service descriptions
Web Service Model (3/3) Operations in a Web Service Architecture Publish Service descriptions need to be published in order forservice requestor to find them Find Service requestor retrieves a service description directlyor queries the service registry for the service required Bind Service requestor invokes or initiates an interaction withthe service at runtime
NetSuite WebServices General Setup (UI) :- To enable the Web services feature:1. As administrator, click Setup > Company > Enable Features.2. Click the SuiteCloud tab.3. Select the Web Services check box.4. Click Save. Enable Show Internal ID from :-1. Home > Set Preferences.2. Click the General Tab.3. check the Show Internal IDs box.
NetSuite IDE Setup Project Setup :-1> Install the IDE ( Visual Studio or Eclipse).2> Create a New Project.3> Add Web Reference. Using Below given URL’s WSDL URL :-https://webservices.netsuite.com/wsdl/v2012_2_0/netsuite.wsdl SOAP URL :-https://webservices.netsuite.com/services/NetSuitePort_2012_2Note :- Use dynamic method to get the correct service url’s by getDataCenterUrls() api. WebService Listener :-https://webservice.na1.netsuite.com Schema Browser (For Reference):-https://system.netsuite.com/help/helpcenter/en_US/SchemaBrowser/indexv2012_2_0.html
Web Services Class and API’s “NetSuiteService” Class is a primary Classexposed by NetsuiteWeb Interface. It has exposed Events and API’sExample :- add, delete, update, initializeget, search etc.