diff --git a/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb b/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb
index 27ad6a9c9bb7a440b78d5dcc800d77457354c589..ce74db5740d4f893f828022dde3d543876b84c55 100644
--- a/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb
+++ b/notebooks/AGIPD/AGIPD_Correct_and_Verify.ipynb
@@ -165,7 +165,6 @@
     ")\n",
     "from cal_tools.ana_tools import get_range\n",
     "from cal_tools.enums import AgipdGainMode, BadPixels\n",
-    "from cal_tools.restful_config import restful_config\n",
     "from cal_tools.step_timing import StepTimer\n",
     "from cal_tools.tools import (\n",
     "    CalibrationMetadata,\n",
diff --git a/notebooks/AGIPD/AGIPD_Retrieve_Constants_Precorrection.ipynb b/notebooks/AGIPD/AGIPD_Retrieve_Constants_Precorrection.ipynb
index 91f180d8477edba7fa0dae09d945c8e36ffda948..fe2255505e51c94e37847490273b1a93072bc35b 100644
--- a/notebooks/AGIPD/AGIPD_Retrieve_Constants_Precorrection.ipynb
+++ b/notebooks/AGIPD/AGIPD_Retrieve_Constants_Precorrection.ipynb
@@ -93,7 +93,6 @@
     "from calibration_client import CalibrationClient\n",
     "from cal_tools.agipdlib import AgipdCtrl, SnowResolution\n",
     "from cal_tools.calcat_interface import AGIPD_CalibrationData, CalCatError\n",
-    "from cal_tools.restful_config import restful_config\n",
     "from cal_tools.step_timing import StepTimer\n",
     "from cal_tools.tools import CalibrationMetadata, calcat_creation_time, module_index_to_qm\n",
     "from cal_tools.enums import AgipdGainMode"
@@ -311,10 +310,12 @@
     "for cname in constants:\n",
     "    if cname in gain_constants:\n",
     "        agipd_cal.gain_mode = None\n",
+    "    else:\n",
+    "        agipd_cal.gain_mode = gain_mode\n",
     "    try:\n",
     "        a = agipd_cal.metadata([cname])\n",
     "        for mod, ccv_entry in a.items():\n",
-    "            agipd_metadata[mod].update(a[mod])\n",
+    "            agipd_metadata[mod].update(ccv_entry)\n",
     "    except CalCatError as e:\n",
     "        pass  # a validation of missing constants is done later.\n",
     "\n",
diff --git a/src/cal_tools/agipdlib.py b/src/cal_tools/agipdlib.py
index 5d5aa54a244b47b162aac535f33d95e90470a538..6e1c64977311d03140aaf75b62fa5a1038474e76 100644
--- a/src/cal_tools/agipdlib.py
+++ b/src/cal_tools/agipdlib.py
@@ -1427,7 +1427,10 @@ class AgipdCorrections:
             * Constants.AGIPD.SlopesFF
             * Constants.AGIPD.BadPixelsFF
         """
-        from cal_tools.calcat_interface import AGIPD_CalibrationData
+        from cal_tools.calcat_interface import (
+            AGIPD_CalibrationData,
+            CalCatError,
+        )
 
         when = {}
         cons_data = {}
@@ -1463,24 +1466,33 @@ class AgipdCorrections:
             gain_constants +=  ["SlopesPC", "BadPixelsPC"]
         if self.corr_bools.get("xray_corr"):
             gain_constants += ["SlopesFF", "BadPixelsFF"]
-
+        metadata = {karabo_da: {}}
         constants = dark_constants
         constants += gain_constants
-        metadata = agipd_cal.metadata(constants)
+        for cname in constants:
+            if cname in gain_constants:
+                agipd_cal.gain_mode = None
+            else:
+                agipd_cal.gain_mode = gain_mode
+            try:
+                metadata[karabo_da].update(
+                    agipd_cal.metadata([cname])[karabo_da])
+            except CalCatError as e:
+                pass  # a validation of missing constants is done later.
+
         # Validate the constants availability and raise/warn correspondingly.
-        for mod, ccv_dict in metadata.items():
-            missing_dark_constants = set(
-                c for c in dark_constants if c not in ccv_dict.keys())
-            missing_gain_constants = set(
-                c for c in gain_constants if c not in ccv_dict.keys())
-            if missing_dark_constants:
-                raise KeyError(
-                    f"Dark constants {missing_dark_constants} are not available"
-                    f" for correction. Module: {mod}")
-            if missing_gain_constants:
-                warning(
-                    f"Gain constants {missing_gain_constants} were"
-                    f" not retrieved. Module: {mod}")
+        missing_dark_constants = set(
+            c for c in dark_constants if c not in metadata[karabo_da].keys())
+        missing_gain_constants = set(
+            c for c in gain_constants if c not in metadata[karabo_da].keys())
+        if missing_dark_constants:
+            warning(
+                f"Dark constants {missing_dark_constants} are not available"
+                f" for correction. Module: {karabo_da}")
+        if missing_gain_constants:
+            warning(
+                f"Gain constants {missing_gain_constants} were"
+                f" not retrieved. Module: {karabo_da}")
 
         for cname in constants:
             if metadata[karabo_da].get(cname):
diff --git a/src/cal_tools/calcat_interface.py b/src/cal_tools/calcat_interface.py
index 22db045d07ae866ce0c8405b32f8ef6b7dbb5baa..00c1a52ea59962bf3f6be2c23eb071001c924235 100644
--- a/src/cal_tools/calcat_interface.py
+++ b/src/cal_tools/calcat_interface.py
@@ -178,6 +178,7 @@ class CalCatApi(metaclass=ClientWrapper):
         else:
             raise ValueError(f"{module_naming} is unknown!")
 
+
     @lru_cache()
     def calibration_id(self, calibration_name):
         """ID for a calibration in CalCat."""
@@ -762,10 +763,8 @@ class CalibrationData:
 
         for db_name in parameters:
             value = getattr(self, self._simplify_parameter_name(db_name), None)
-
             if value is not None:
                 cond[db_name] = value
-
         return cond
 
     @classmethod
@@ -1042,7 +1041,7 @@ class AGIPD_CalibrationData(SplitConditionCalibrationData):
         elif gain_mode is not None:
             cond["Gain mode"] = 1
 
-        if int(cond.get("Integration time", -1)) == 12:
+        if int(cond.get("Integration time", None)) == 12:
             del cond["Integration time"]
 
         return cond