create or replace function fnc_26ai_traffic_vision( p_base64_image in clob, p_feature_type in varchar2 , p_comp_id in varchar2) return clob -- -- Visio: https://docs.oracle.com/pt-br/solutions/ai-vision-extract-data/index.html#GUID-A4FD65D0-BF62-472B-B4C7-0ADF5425A566 -- as /* p_feature_type: https://docs.oracle.com/en-us/iaas/api/#/en/vision/20220125/datatypes/ImageFeature IMAGE_CLASSIFICATION: Label the image. OBJECT_DETECTION: Identify objects in the image with bounding boxes. TEXT_DETECTION: Recognize text at the word and line level. FACE_DETECTION: Identify faces in the image with bounding boxes and face landmarks. */ v_endpoint varchar2(500) := 'https://vision.aiservice.us-chicago-1.oci.oraclecloud.com/20220125/actions/analyzeImage'; request_json CLOB; l_response_body clob; begin request_json := to_clob('{ "compartmentId": "' || p_comp_id || '", "image": { "source":"INLINE", "data":"' || p_base64_image || '" }, "features":[ { "featureType":"' || p_feature_type || '", "maxResults": 5 } ] }' ); -- Definir os cabeçalhos da requisição APEX_WEB_SERVICE.G_REQUEST_HEADERS(1).NAME := 'Content-Type'; APEX_WEB_SERVICE.G_REQUEST_HEADERS(1).VALUE := 'application/json'; APEX_WEB_SERVICE.G_REQUEST_HEADERS(2).NAME := 'Accept'; APEX_WEB_SERVICE.G_REQUEST_HEADERS(2).VALUE := 'application/json'; -- Faça a chamada POST usando APEX_WEB_SERVICE e a credencial OCI l_response_body := APEX_WEB_SERVICE.make_rest_request( p_url => v_endpoint, p_http_method => 'POST', p_body => request_json, p_credential_static_id => 'apex_cred' ); return l_response_body; end; /