diff --git a/src/service/service/__main__.py b/src/service/service/__main__.py
index f2b6e38d6181a0c56b4f1dfca3116717d1400ced..18f91bf1a5de207d1c4064f7c48d3dabb14db553 100644
--- a/src/service/service/__main__.py
+++ b/src/service/service/__main__.py
@@ -43,6 +43,8 @@ def main():
         get_env_var_name(ServiceNameEnum.DEVICE,   ENVVAR_SUFIX_SERVICE_PORT_GRPC),
         get_env_var_name(ServiceNameEnum.PATHCOMP, ENVVAR_SUFIX_SERVICE_HOST     ),
         get_env_var_name(ServiceNameEnum.PATHCOMP, ENVVAR_SUFIX_SERVICE_PORT_GRPC),
+        get_env_var_name(ServiceNameEnum.TE,       ENVVAR_SUFIX_SERVICE_HOST     ),
+        get_env_var_name(ServiceNameEnum.TE,       ENVVAR_SUFIX_SERVICE_PORT_GRPC),
     ])
 
     signal.signal(signal.SIGINT,  signal_handler)
diff --git a/src/te/apps/epce/src/epce_server.erl b/src/te/apps/epce/src/epce_server.erl
index 8996d3b358bdcebbbadaa7ff2d61467664d5b27b..c7b404fca2c39e7d9bce31afd065ba72fef09c84 100644
--- a/src/te/apps/epce/src/epce_server.erl
+++ b/src/te/apps/epce/src/epce_server.erl
@@ -36,7 +36,7 @@
 
 %%% MACROS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
--define(LARGE_TIMEOUT, 20000).
+-define(LARGE_TIMEOUT, infinity).
 
 
 %%% RECORDS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/src/te/apps/tfte/src/tfte_server.erl b/src/te/apps/tfte/src/tfte_server.erl
index ea80848f7b22ab6280207e90f0c8f1b7aa59db0e..a6c8c4b71dd8edf59ead06a653de9aec3dffbf7e 100644
--- a/src/te/apps/tfte/src/tfte_server.erl
+++ b/src/te/apps/tfte/src/tfte_server.erl
@@ -138,22 +138,22 @@ do_request_lsp(#data{services = Services} = Data,
         {error, Reason} ->
             ?LOG_ERROR("Error while setting up service ~s forward LSP: ~p",
                        [format_service_id(ServiceId), Reason]),
-            {'SERVICESTATUS_UNDEFINED', Data};
+            {{error, Reason}, Data};
         {ok, ForwardFlow} ->
             case epce_server:initiate_flow(SymbolicName2, Id2, Id1, BindingLabel2) of
                 {error, Reason} ->
                     ?LOG_ERROR("Error while setting up service ~s backward LSP: ~p",
                                [format_service_id(ServiceId), Reason]),
                     %TODO: Cleanup forward flow ?
-                    {'SERVICESTATUS_UNDEFINED', Data};
+                    {{error, Reason}, Data};
                 {ok, BackwardFlow} ->
                     ServiceData = {ServiceMap, ForwardFlow, BackwardFlow},
                     Services2 = Services#{ServiceId => ServiceData},
                     Data2 = Data#data{services = Services2},
-                    {'SERVICESTATUS_ACTIVE', Data2}
+                    {{ok, 'SERVICESTATUS_ACTIVE'}, Data2}
             end
     end.
 
 do_delete_lsp(Data, ServiceId) ->
     ?LOG_INFO("LSP DELETION REQUESTED ~p", [ServiceId]),
-    {'SERVICESTATUS_UNDEFINED', Data}.
\ No newline at end of file
+    {{error, not_implemented}, Data}.
\ No newline at end of file
diff --git a/src/te/apps/tfte/src/tfte_te_service.erl b/src/te/apps/tfte/src/tfte_te_service.erl
index 2f230fd6b2c7fa55c34d8b22d5289c4e30226b76..f0e7116d25ae2be45aae4e087414b05d2cb819cd 100644
--- a/src/te/apps/tfte/src/tfte_te_service.erl
+++ b/src/te/apps/tfte/src/tfte_te_service.erl
@@ -19,22 +19,32 @@
 
 %%% BEHAVIOUR te_te_service_bhvr CALLBACK FUNCTIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-request_lsp(_Ctx, Service) ->
-    ?LOG_ERROR("Requesting LSP: ~p", [Service]),
-    try tfte_server:request_lsp(Service)
+request_lsp(Ctx, Service) ->
+    ?LOG_INFO("Requesting LSP: ~p", [Service]),
+    try tfte_server:request_lsp(Service) of
+        {ok, Status} ->
+            {ok, Status, Ctx};
+        {error, Reason} ->
+            ?LOG_INFO("Error while requesting LSP: ~p", [Reason]),
+            {ok, 'SERVICESTATUS_UNDEFINED', Ctx}
     catch E:R:S ->
         ?LOG_ERROR("Error while requesting LSP: ~p:~p ~p", [E, R, S]),
-        'SERVICESTATUS_UNDEFINED'
+        {ok, 'SERVICESTATUS_UNDEFINED', Ctx}
     end.
 
 update_lsp(_Ctx, _ServiceId) ->
     {error, {?GRPC_STATUS_UNIMPLEMENTED, <<"Not yet implemented">>},
              #{headers => #{}, trailers => #{}}}.
 
-delete_lsp(_Ctx, ServiceId) ->
+delete_lsp(Ctx, ServiceId) ->
     ?LOG_ERROR("Deleting LSP: ~p", [ServiceId]),
-    try tfte_server:delete_lsp(ServiceId)
+    try tfte_server:delete_lsp(ServiceId) of
+        {ok, Status} ->
+            {ok, Status, Ctx};
+        {error, Reason} ->
+            ?LOG_INFO("Error while deleting LSP: ~p", [Reason]),
+            {ok, 'SERVICESTATUS_UNDEFINED', Ctx}
     catch E:R:S ->
         ?LOG_ERROR("Error while deleting LSP: ~p:~p ~p", [E, R, S]),
-        'SERVICESTATUS_UNDEFINED'
+        {ok, 'SERVICESTATUS_UNDEFINED', Ctx}
     end.
diff --git a/src/te/apps/tfte/src/tfte_topology.erl b/src/te/apps/tfte/src/tfte_topology.erl
index 54825c409614c7adfd9a2844ace899c4703f9d5c..886fd926dba1f4841bc78d44ee3ecab295850fc2 100644
--- a/src/te/apps/tfte/src/tfte_topology.erl
+++ b/src/te/apps/tfte/src/tfte_topology.erl
@@ -281,27 +281,20 @@ device_status(#{device_operational_status := 'DEVICEOPERATIONALSTATUS_ENABLED'})
     enabled.
 
 device_mpls_label(Device) ->
-    case device_config_value(<<"/te_data/mpls_label">>, Device) of
-        undefined -> undefined;
-        LabelJson ->
-            try jsx:decode(LabelJson)
-            catch error:badarg -> undefined
-            end
+    try device_config_value(<<"/te_data/mpls_label">>, Device)
+    catch error:badarg -> undefined
     end.
 
 device_pcc_address(Device) ->
-    case device_config_value(<<"/te_data/pcc_address">>, Device) of
+    try device_config_value(<<"/te_data/pcc_address">>, Device) of
         undefined -> undefined;
-        AddressJson ->
-            try jsx:decode(AddressJson) of
-                AddressBin ->
-                    case inet_parse:address(binary_to_list(AddressBin)) of
-                        {ok, Address} -> Address;
-                        {error,einval} -> undefined
-                    end
-            catch
-                error:badarg -> undefined
+        AddressBin ->
+            case inet_parse:address(binary_to_list(AddressBin)) of
+                {ok, Address} -> Address;
+                {error,einval} -> undefined
             end
+    catch
+        error:badarg -> undefined
     end.
 
 device_config_value(Key, #{device_config := Config}) ->