diff --git a/source/RobotAPI/libraries/armem_robot_state/client/common/RobotReader.cpp b/source/RobotAPI/libraries/armem_robot_state/client/common/RobotReader.cpp
index ec61aff0c4ae0e8aab22d6a05e90228600035145..6a635e51628f9b468e404eca10c4411b92171ade 100644
--- a/source/RobotAPI/libraries/armem_robot_state/client/common/RobotReader.cpp
+++ b/source/RobotAPI/libraries/armem_robot_state/client/common/RobotReader.cpp
@@ -172,7 +172,7 @@ namespace armarx::armem::robot_state
         .coreSegments().withName(properties.proprioceptionCoreSegment)
         .providerSegments().withName(description.name) // agent
         .entities().all() // TODO
-        .snapshots().atTime(timestamp);
+        .snapshots().beforeTime(timestamp);
         // clang-format on
 
         const armem::client::QueryResult qResult = memoryReader.query(qb.buildQueryInput());
@@ -189,7 +189,7 @@ namespace armarx::armem::robot_state
 
     std::optional<robot::RobotState::Pose> RobotReader::queryGlobalPose(const robot::RobotDescription& description, const armem::Time& timestamp) const
     {
-        const auto result = transformReader.getGlobalPose(description.name, "root", timestamp.toMicroSeconds());
+        const auto result = transformReader.getGlobalPose(description.name, "root", timestamp);
         if (not result)
         {
             return std::nullopt;