REST Data Source in Oracle APEX | A Comprehensive Guide
In today’s fast-paced development landscape, integrating RESTful services is a key aspect of building dynamic and data-driven applications. With the robust capabilities of Oracle APEX, developers can seamlessly incorporate REST Data Sources to leverage a wide array of functionalities.
From accessing external data feeds to streamlining data utilization across various APEX components, REST Data Sources help you enhance the efficiency and interactivity of your applications.
This article explores REST Data Sources in Oracle APEX, unraveling their core concepts and providing a step-by-step walkthrough for creating these sources. Let’s discover the seamless fusion of RESTful capabilities with APEX’s user-friendly interface.
Understanding REST Data Sources in Oracle APEX
REST Data Sources in Oracle APEX allow developers to integrate Representational State Transfer (REST) services or generic JSON data feeds into their applications, enabling them to utilize the data across various Oracle APEX components.
You can utilize REST Data Sources to access REST services or generic JSON data feeds in applications and make use of the data across various Oracle APEX components.
Within Oracle APEX, integration of REST Data Sources is directly provided in classic reports, interactive reports, CSS Calendar, and JET Charts. Each REST Data Source may contain one or multiple Operations that reference external web services. Configurations set at the REST source level are shared across all included operations.
Types of REST Data Sources in Oracle APEX
Oracle APEX supports several built-in REST Data Source types, including:
Simple HTTP
The Simple HTTP option is suitable for an HTTP data feed where Oracle APEX assumes all data is retrieved with the initial request. Manual configuration is necessary for invocation details and parameters, and the server typically doesn’t support advanced REST service features like server-side filtering or ordering.
Oracle REST Data Services
This type refers to Oracle REST Data Services (ORDS), adhering to the Oracle REST standard and supporting GET, POST, PUT, or DELETE operations. It enables server-side filtering and ordering, allowing Oracle APEX to delegate report order-bys and filters to the REST service.
REST Enabled SQL Query
It is a REST Source based on an executed SQL Query on a REST Enabled SQL Reference. While Oracle APEX supports filtering and pagination, it does not support Data Manipulation Language (DML) on these endpoints.
Oracle Cloud Applications (SaaS) REST Service
This option indicates RESTful web services offered by Oracle Cloud SaaS Applications. Integration of these services into your Oracle APEX application is possible using this web service type. Oracle APEX supports pagination for these services.
Oracle Cloud Infrastructure (OCI) REST Service
This refers to RESTful web services provided by Oracle Cloud Infrastructure, allowing integration of OCI REST Services, such as accessing the Object Store, into your Oracle APEX application. Oracle APEX provides pagination support for these Services.
How Do I Create a REST Data Source in APEX?
To create a REST Data Source in Oracle APEX, follow these steps:
1. Start by navigating to the REST Data Sources page by following these steps:
– Access the App Builder from the Workspace home page.
– Select the desired application.
– On the Application home page, click on Shared Components, located in the center of the page.
– Within the Data Sources section, choose REST Data Sources.
– Once on the REST Data Sources page, click the “Create” option.
2. In the “General” section, you can define the type of REST Data Source, which can be a built-in type or a custom type using a REST Source Plug-In. The built-in types include Simple HTTP, Oracle REST Data Services (ORDS), REST Enabled SQL Query, Oracle Cloud Applications (SaaS) REST Service, and Oracle Cloud Infrastructure (OCI) REST Service.
3. After selecting the REST Data Source type, provide a descriptive name and the Endpoint URL (starting with http:// or https://) for the REST Data Source.
4. Configure the HTTPS Host Name or use the hostname from the given URL.
5. Click “Next” to proceed.
6. In the “Remote Server” section, choose an existing Remote Server object. This object includes the base URL and service-specific path suffix, which makes up the HTTP Endpoint URL of the REST Data Source.
7. Define the service-specific URL Path and click “Next.”
8. If the REST Data Source Type is Simple HTTP, you can specify the Pagination Type, such as Page Size and Fetch Offset, Page Size and Page Number, or Page Number.
9. Choose whether Authentication is necessary for the new REST Data Source.
10. Select one of the following options to proceed: “Create REST Source Manually” to manually create a REST Data Source, “Advanced” to configure advanced parameters, or “Discover” to use Discovery mode for automatic setup.
11. If you select “Discover,” APEX will execute HTTP requests, sample data from the Web service, and create a Data Profile.
12. Review the information and confirm the creation of the REST Data Source.
13. The REST Data Source is now created and available for use.
Frequently Asked Questions
What are RESTful services in APEX?
RESTful services in APEX refer to the ability of Oracle Application Express (APEX) to interact with external systems using the Representational State Transfer (REST) architectural style, enabling seamless integration and data exchange.
What is the difference between REST API and Apex REST API?
The main distinction lies in the context: while REST API refers to a broader architectural style for designing networked applications, Apex REST API pertains to the Salesforce platform and its capability to expose Apex classes as RESTful web services.
Conclusion
By understanding the versatility of REST Data Sources within Oracle APEX, developers can unlock a world of possibilities for creating powerful and interactive applications. As you embark on your journey to leverage the potential of RESTful integration, feel free to share your thoughts or any questions you may have.