Skip to Main Content

APEX

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Rest Data Source - how to?

LemarApr 4 2024
Can someone help me (where should I do what) how to define an Apex Rest Data Source based on the PLSQL process below. This code works OK, I just want to learn how and where to define everything necessary as a Rest Data Source and then use it as an IG source.

Oracle APEX 21.2.0
Oracle Database 21c Express Edition Release 21.0.0.0.0

DECLARE
    
    ay constant varchar2(100) := 'YYYYYYYYYYYYYYYYYYYY';
    ax CONSTANT VARCHAR2(100) := 'XXXXXXXXXXXXXXXXXXXX';
    l_t varchar2(100);
    l_n VARCHAR2(100);
    content_type CONSTANT VARCHAR2(100) := 'application/x-www-form-urlencoded';
    payload VARCHAR2(4000) := 'limit=' || '10'|| '&sort=' || 'desc'||'&offset'||'1';
    l_message VARCHAR2(4000);
    response CLOB;
    l_s varchar2(4000);
 BEGIN
     l_t := Function0();  -- dynamic
     l_n := Function1(); --dynamic
     l_message := 'XYZ ' || ax ||
               'POST' || 'www.xxxxx.net' ||
               '/api/v2/test_transactions/' || '' ||
               content_type || l_n || l_t || 'v2'|| payload;        

 
    l_s := Function2(l_message, ay);
     
    apex_web_service.g_request_headers.delete();
    apex_web_service.g_request_headers(1).name := 'X-A';
    apex_web_service.g_request_headers(1).value := 'XYZ ' || ax;
    apex_web_service.g_request_headers(2).name := 'X-AS';
    apex_web_service.g_request_headers(2).value := l_s;
    apex_web_service.g_request_headers(3).name := 'X-AN';
    apex_web_service.g_request_headers(3).value := l_n;
    apex_web_service.g_request_headers(4).name := 'X-AT';
    apex_web_service.g_request_headers(4).value := l_tp;
    apex_web_service.g_request_headers(5).name := 'X-AV';
    apex_web_service.g_request_headers(5).value := 'v2';
    apex_web_service.g_request_headers(6).name := 'Content-Type';
    apex_web_service.g_request_headers(6).value := content_type;
  
    response := apex_web_service.make_rest_request(
                     p_url         => 'www.xxxxx.net/api/v2/test_transactions/',
                     p_http_method => 'POST',
                     p_body        => payload
                
                    );
 
    dbms_output.put_line(response);
END;
Comments
Post Details
Added on Apr 4 2024
1 comment
400 views