diff --git a/api/src/engine/connectors/datashield/main.connector.ts b/api/src/engine/connectors/datashield/main.connector.ts
index b5a0c4fe10fce074bd1fdd6a7798e493c34152a9..a3622654e507cc5747d93ecd287dd2fe81c28247 100644
--- a/api/src/engine/connectors/datashield/main.connector.ts
+++ b/api/src/engine/connectors/datashield/main.connector.ts
@@ -1,17 +1,19 @@
-import { HttpService } from '@nestjs/axios';
 import { Observable } from 'rxjs';
-import { IEngineOptions, IEngineService } from 'src/engine/engine.interfaces';
+import { IEngineService } from 'src/engine/engine.interfaces';
 
 export default class DataShieldService implements IEngineService {
-  constructor(
-    private readonly options: IEngineOptions,
-    private readonly httpService: HttpService,
-  ) {}
-
   demo(): string {
     return 'datashield';
   }
 
+  getActiveUser(): Observable<string> {
+    throw new Error('Method not implemented.');
+  }
+
+  editActiveUser(): Observable<string> {
+    throw new Error('Method not implemented.');
+  }
+
   getExperiment(): Observable<string> {
     throw new Error('Method not implemented.');
   }
diff --git a/api/src/engine/connectors/exareme/main.connector.ts b/api/src/engine/connectors/exareme/main.connector.ts
index 9baa29676bc50d029a754b15b2a6b104207599b6..b85b494bec2fb8c1de2ac8bda441e9c71c3da241 100644
--- a/api/src/engine/connectors/exareme/main.connector.ts
+++ b/api/src/engine/connectors/exareme/main.connector.ts
@@ -13,6 +13,22 @@ export default class ExaremeService implements IEngineService {
     return 'exareme';
   }
 
+  getActiveUser(): Observable<string> {
+    const path = this.options.baseurl + 'activeUser';
+
+    return this.httpService
+      .get<string>(path)
+      .pipe(map((response) => response.data));
+  }
+
+  editActiveUser(request: Request): Observable<string> {
+    const path = this.options.baseurl + 'activeUser/agreeNDA';
+
+    return this.httpService
+      .post<string>(path, request.body)
+      .pipe(map((response) => response.data));
+  }
+
   getExperiment(uuid: string): Observable<string> {
     const path = this.options.baseurl + `experiments/${uuid}`;
 
diff --git a/api/src/engine/engine.controller.ts b/api/src/engine/engine.controller.ts
index 8000ee7085bdb2ff3dd555beff3dfea74c95eedd..a495a2c317efa7911dc3f2e43915c88f9fb13830 100644
--- a/api/src/engine/engine.controller.ts
+++ b/api/src/engine/engine.controller.ts
@@ -64,4 +64,14 @@ export class EngineController {
   startExperiment(@Req() request: Request): Observable<string> {
     return this.engineService.startExperiment(request);
   }
+
+  @Get('activeUser')
+  getActiveUser(@Req() request: Request): Observable<string> {
+    return this.engineService.getActiveUser(request);
+  }
+
+  @Post('activeUser/agreeNDA')
+  agreeNDA(@Req() request: Request): Observable<string> {
+    return this.engineService.editActiveUser(request);
+  }
 }
diff --git a/api/src/engine/engine.interfaces.ts b/api/src/engine/engine.interfaces.ts
index 1582d541085a3cec8ee4b15e3c470a36eee43b52..22f4a540d36de9b4d05ee98a529bac322a706d26 100644
--- a/api/src/engine/engine.interfaces.ts
+++ b/api/src/engine/engine.interfaces.ts
@@ -22,4 +22,8 @@ export interface IEngineService {
   startExperimentTransient(request: Request): Observable<string>;
 
   startExperiment(request: Request): Observable<string>;
+
+  getActiveUser(request: Request): Observable<string>;
+
+  editActiveUser(request: Request): Observable<string>;
 }