diff --git a/src/initialize_mdbnomics.m b/src/initialize_mdbnomics.m
index da46695fffaa6e44863891e78b51a73221f22c54..633caac89d0fa320d1ef7a50817aa05b5d2af07a 100644
--- a/src/initialize_mdbnomics.m
+++ b/src/initialize_mdbnomics.m
@@ -50,14 +50,16 @@ end
 P = cellfun(@(c)[mdbnomics_src_root c], p, 'uni', false);
 addpath(P{:});
 
-% Check minimal MATLAB requirements.
-if matlab_ver_less_than('8.5')
-    error('The minimum MATLAB requirement of this package is R2015a.');
-end
+if ~isoctave()
+    % Check minimal MATLAB requirements.
+    if matlab_ver_less_than('8.5')
+        error('The minimum MATLAB requirement of this package is R2015a.');
+    end
 
-% Add jsonlab if MATLAB version < R2016b
-if matlab_ver_less_than('9.1')
-    addpath([mdbnomics_src_root '/../contrib/jsonlab']);
+    % Add jsonlab if MATLAB version < R2016b
+    if matlab_ver_less_than('9.1')
+        addpath([mdbnomics_src_root '/../contrib/jsonlab']);
+    end
 end
 
 mdb_options.api_base_url = 'https://api.db.nomics.world';
diff --git a/src/utils/fetch_series_page.m b/src/utils/fetch_series_page.m
index 8ecfc352b76dd9655bc8a814aa7f2508253eb579..94d73b0f6fde62aff29081ae8462f53fd9627bb0 100644
--- a/src/utils/fetch_series_page.m
+++ b/src/utils/fetch_series_page.m
@@ -30,7 +30,7 @@ function response_json = fetch_series_page(series_endpoint_url, offset)
 % You should have received a copy of the GNU General Public License
 % along with Dynare.  If not, see <http://www.gnu.org/licenses/>.
 
-if contains(series_endpoint_url, '?')
+if strfind(series_endpoint_url, '?')
     series_page_url = sprintf('%s%soffset=%i', series_endpoint_url, '&', offset);
 else
     series_page_url = sprintf('%s%soffset=%i', series_endpoint_url, '?', offset);
@@ -38,18 +38,18 @@ end
 
 options = weboptions('ContentType','json');
 try
-    response_json = webread(series_page_url, options);
+    if isoctave()
+        disp(webread(series_page_url, options))
+        response_json = jsondecode(webread(series_page_url, options));
+    else
+        response_json = webread(series_page_url, options);
+    end
 catch ME
     error_message = ['Could not fetch data from URL: ' series_page_url ' because: ' ME.identifier];
     error(error_message); 
 end
 
-if isempty(response_json.errors)
-    series_page = response_json.series;
-    if ~isempty(series_page)
-        assert(series_page.offset == offset);
-    end
-else
+if ~isempty(response_json.errors)
     error_ = response_json.errors;
     if ~isempty(error_.dataset_code) && isempty(error_.series_code)
         error('%s for: %s. Please revise your input for dataset code.', error_.message, error_.dataset_code);