Siebel REST API Interview Questions

Question 1 : What are REST APIs? 

Answer: REST stands for Representational state transfer. It is a protocol for data transfer using HTTP methods.

Usually REST API uses JSON format to communicate as it is simpler and lightweight than XML

uestion 2: Whats the architecture changes required in Siebel to implement REST API? 

Answer:  Oracle has introduced java web containers and Proxy Object Manager to manage them at run time. Architecture looks like below:


Question 3: What is the use of Siebel REST Proxy Object Manager?

Answer: Siebel REST Proxy Object Manager is a new component which was introduced in Siebel IP17 to manage Java Web Containers on the Siebel Server. Requests from the web server is served by java web container by sending the request to EAI Object Manager.

Siebel REST Proxy Object Manager is responsible for turning the Java Web Container On or Off.

Question 4:  What are the URL Patterns for data and business services?

Answer:
Business services can be directly invoked as RESTful resource. Using following pattern:

http://localhost:9001/siebel-rest/v1.0/service/<BusinessServiceName>/<BSMethodName>?MethodParam1=Value& MethodParam2=Value   

And Business Components can be accessed using following URL pattern.

http://<Server Name>:<port>/siebel-rest/<version>/data/

Example to query Siebel Administrator Contact Record:

http://localhost:9001/siebel-rest/v1.0/data/Contact/Contact/0-1

Question 5: How can I get detailed logging on REST API calls?


Answer:
a. Navigate to the SIEBEL_ROOT\siebsrvr\javacontainer\javacontainer0\conf\logging.properties file
b. Edit the file, change the various logging entry value:
From: FINE
To: FINEST
c. Restart the Siebel Java Web Container instances by shutting down and starting up the Siebel Rest Proxy Object Manager server component.
d. The log files for the Siebel Java Web Container are located under:

SIEBEL_ROOT\siebsrvr\javacontainer\javacontainer1\logs

catalina.<date>.log
host-manager.<date>.log
javacontainer_start.log
localhost.<date>.log
localhost_access_log.<date>.txt
siebel-rest_N.log

Siebel EAI Logs can be recorded in the Siebel EAI Object Manager by increasing the log levels on the component.

Question 6: How do you Unit Test Siebel REST APIs?

Answer: Best way to test Siebel REST APIs is to test it on the server using Postman tool.

Question 7: What is the difference between POST and PUT HTTP Methods?

Answer: POST method is used for inserting records in the target system and PUT is used to Update existing records?

Question 8: How can you load balance Siebel REST APIs?

Answer: To load balance multiple Java Web Containers a worker.properties file is required to facilitate the process. Oracle has provided the github repo to generate the properties file.
https://github.com/OracleSiebel/ConfiguringSiebel/tree/master/ExampleCode/REST/Load%20Balancing
Question 9: What is OAuth and how it is used in Siebel? 

Answer: OAuth is Open Authorisation protocol used to give access to protected resource based on the access token. OAuth is technically not required to perform data transfer using RESTAPIs however it has become a pseudo standard in industry. 

Question 10: Can you invoke Workflows from REST APIs? 
Answer: Yes , infact if workflow process manager Business service is exposed as REST full resource one can invoke any workflow in Siebel enterprise.

Question 11: Does Siebel REST API needs a new licence?
Answer:  No Siebel REST API framework is available as standard feature with current license agreement with Oracle.

Urging all my readers to please help me to grow and complete this interview question list by adding answers and new questions in comments.

About Siebel CRM REST API URI Formats

  1. The Siebel CRM REST API exposes Siebel CRM Business Objects, Business Services, and Repository Objects.
  2. Siebel CRM REST API executes resource requests for each resource category using the following HTTP URI formats:
    • Siebel CRM REST API basic URI for Siebel Business Objects:
  3. https://Server Name:port/Siebel/v1.0/data/
    • Siebel CRM REST API basic URI for Siebel Business Services:
  4. https://Server Name:port/Siebel/v1.0/service/
    • Siebel CRM REST API URI for a Siebel Repository Resource:
  5. https://ServerName:port/Siebel/v1.0/workspace/<your workspace name>/
    • Siebel CRM REST API URI to execute Siebel Workflow:
  6. https://ServerName:port/Siebel/v1.0/workflow/<your workflow name>/

  1. The values for these URIs are:
    1. Server Name:port: Indicates the name of the server and port hosting the Siebel REST API services.
    2. siebel: Indicates the product name for the REST API.
    3. version: Indicates the current version number, 1.0, of the REST API.
    4. data: Indicates the requested resource is a Siebel Business Object. For more information about Siebel Business
  2. Objects, see Configuring Siebel Business Applications .
    1. service: Indicates the request resource is a Siebel Business Service. For more information about Siebel Business
  3. Services, see Configuring Siebel Business Applications .
    1. workspace: Indicates the request resource is Siebel Repository Data. For more information about workspaces,
  4. see Using Siebel Tools . For more information about Siebel Repository Objects, see Configuring Siebel Business
  5. Applications .
    1. <your workspace name>: Indicates the name of your repository workspace.

Comments

Popular posts from this blog

Siebel Web Service session management

Siebel CRM Overview

Siebel all user properties /different object types/ Field User Property