Here is a first idea on how to start.
But remember that there are tons of tutorials on this and stackoverflow is there to help you solving a problem and not to do it alone for you.
DECLARE
l_source VARCHAR2(200);
l_blob blob := :body;
l_clob clob;
l_values apex_json.t_values;
l_data_count integer;
l_var ...
--LOOP VARS
l_var2 ...
BEGIN
l_clob := wwv_flow_utilities.blob_to_clob(l_blob);
apex_json.parse(
p_values => l_values,
p_source => l_clob
);
l_data_count := apex_json.get_count (
p_values => l_values,
p_path => 'nestedJSON' );
l_var := apex_json.get_varchar2 (
p_values => l_values,
p_path => 'var');
FOR i IN 1 .. l_data_count LOOP
l_var2 := apex_json.get_varchar2(
p_values => l_values,
p_path => 'nestedJSON[%d].var2',
p0 => i);
INSERT INTO table
(var, var2)
VALUES
(l_var, l_var2);
END LOOP;
END;