Web Services 2.0
This topic discusses Web Services 2.0. For information on Web Services 1.0, see
Web Services 1.0.
Overview
Web Services refers to a communication system for applications to talk and exchange data, such as over the World Wide Web. By using Web Services, an application can publish its function or message and receive functions and messages from other applications
Typical components of a web service are:
- Extensible Markup Language (XML), constituting the data to be exchanged.
- World Wide Web’s Hyper Text Transfer Protocol (HTTP), constituting the network over which data is to be exchanged.
- Simple Object Access Protocol (SOAP), constituting a simple XML-based communication protocol let applications exchange information over HTTP. It is independent of platform, technology, and programming language. SOAP is a World Wide Web Consortium (W3C) standard. This subject is covered in the topic An Overview of SOAP APIs and Web Services 2.0
- Web Services Description Language (WSDL), constituting an XML document that describes a web service. It can also be defined as a standard to describe an interface for exchanging information using the SOAP protocol. This subject is covered in the topic WSDL Overview with Web Services 2.0.
This interface describes:
- The location of the SOAP service
- The nature of messages exchanged, such as
- Structure
- Elements
- Characteristics like null allowed, minimum occurrences, and so on
Administration
As provided in the Oracle CPQ 25A
Deprecation Annoucements, we have announced the deprecation of the SOAP v1 Web Services for Oracle CPQ. If you are currently using SOAP v1, we recommend administrators plan the transition to REST Web Services. The end of life and removal of this functionality will occur in Oracle CPQ 25C.
Oracle CPQ uses Web Services versions 1.0 and 2.0. Different features are available depending on which version of Web Services you are using.
- Existing customers using Oracle CPQ version 2014 R2 or earlier have access to Web Services version 1.0.
- Web Services 2.0 was introduced with Oracle CPQ version 2014 R2.
To discover which version of Web Services you are using:
- Click Admin to go to the Admin Home Page.
-
Click Web Services under Integration Platform.
The Web Services version number is shown under Web Service Version, on the upper left-hand corner of the page.
,
If you have a new installation of Oracle CPQ, or have upgraded to 2014 R2, version 2.0 will be listed.
Even if your installation has been using Web Services 1.0, you can use the features of
Web Services 2.0 concurrently.
Features in this version of Web Services include:
Clustering |
No clustering support |
Supports clustering |
Sessions |
Session-based (Stateful) |
Stateless |
Authentication |
Use Oracle CPQ customer security SOAP headers |
|
End points |
No unique end points |
Each service and its WSDL have unique end points. WSDL can be accessed at runtime via its URL. |
Clustering
Oracle CPQ Web Services v2.0 supports clustering, which can further improve scalability and responsiveness of Oracle CPQ for enterprise deployments. Requests don't have to go to a certain node in the server and can be load-balanced.
Sessions
Every SOAP call to Web Services v1.0 by another system requires a login SOAP call to establish a session, and a logout call to close the session. Web Services v2.0 includes the user/pass in the payload header, making the service stateless and eliminating the need for login and logout calls.
Eliminating these calls with stateless Web Services reduces complexity and increases the performance of integrations with CPQ.
OAuth 2.0 Access Token Support
Beginning in Oracle CPQ 25A, Web Services 2.0 supports OAuth 2.0 access tokens when authorizing web service calls into CPQ. In order to use this feature, customers must have Oracle Identity Cloud configured as an OAuth Provider. Refer to OAuth Provider Integration for instructions on setting up this integration.
OAuth 2.0 is the industry-standard protocol for authorization. Access Tokens are more secure than basic authentication. Oracle CPQ supports access tokens when accessing both REST and SOAP endpoints. We recommend transitioning to OAuth access tokens for all SOAP Web Services 2.0 calls as part of your overall plan for secure communication connection.
When testing the OAuth connection, note the following:
-
When present, the OAuth token takes precedence over the Basic Auth Username token.
-
A Username token is automatically generated. However, when the OAuth token is present, OAuth will take precedence over the Username.
-
Follow IDCS documentation to generate the assertions and verify that it works.
Web Services 2.0 WSDL functionality is not changed by OAuth token support.
For more information, see the topic OAuth 2.0 Secure Login Functionality.
Standard-based Authentication
Oracle CPQ Web Services 2.0 supports the following two industry standards for standard-based authentication:
Oracle CPQ Web Services 2.0 can be invoked using the Web Services Security UsernameToken elements for authentication. As of Oracle CPQ release 2014 R2, the password support is limited to the PasswordText type.
- HTTP Basic Authentication
In the absence of WSEE headers, the HTTP basic authentication standard is also accepted.
End Points
With Web Services 2.0, each Web Service has its own unique end points, listed below:
- Commerce: /v2_0/receiver/commerce/{commerce process}
- Configuration: /v2_0/receiver/configuration/{product family ID}/{product line ID}/{model ID}
- Parts: /v2_0/receiver/parts
- Price Book Association: /v2_0/receiver/priceBookAssocs
- Data Tables: /v2_0/receiver/dataTables/{table ID}
- Users: /v2_0/receiver/users
- Groups: /v2_0/receiver/groups
- Exchange Rates: /v2_0/receiver/exchangeRates
For example, for a Commerce Process with the variable name oraclecpqo, the SOAP Web Service URL is:
https://xxx.oracle.com/v2_0/receiver/commerce/oraclecpqo
The URL of the WSDL is the URL of the corresponding Web Service, appended with “?WSDL”. Using the same process, the URL is
https://xxx.oracle.com/v2_0/receiver/commerce/oraclecpqo?WSDL
Each Web Service also has its own namespace. For example, the namespace for the above Commerce Web Service is uniquely identified as:
http://xmlns.oracle.com/cpqcloud/commerce/oraclecpqo
Examining End Points
- Click Admin to go to the Admin Home Page.
-
Click Web Services in the Integration Platform section.
The Web Services Test page opens.
-
Confirm that the Web Service Version is 2.0.
-
Select the tab for your endpoint (i.e., Commerce, Configuration, Parts, etc.).
-
Enter the OAuth 2.0 Token if you are using OAuth access tokens when authorizing web service calls.
Oracle CPQ 25A continues to support Basic Auth using Username and Password token entries. If you are using Basic Auth, the OAuth 2.0 Token field is not required. However, we recommend planning the transition to OAuth token as a secure communication connection.
-
Notice the SOAP Server URL field contains information specific to the SOAP API endpoint type. For example, https://testsite.oracle.com/v2_0/receiver/commerce/transaction_bmClone_2
. This reflects the unique end points in Web Services 2.0.
-
Select the desired API from the Select API drop-down.
-
Complete the API specific fields as displayed for the tab/endpoint. For example in the Commerce tab the Process Name, you would select a Commerce Process from the drop-down.
-
Select from the following:
-
Generate Input - displays the Input SOAP XML
-
Display WSDL - displays the WSDL
-
Submit - provides the Result SOAP XML
-
Generate Schema and WSDL - generates the schema and WSDL
-
Back - returns to the Admin Home page.
Additional Information
To learn more about these technologies, refer to the table below:
Related Topics
See Also