diff --git a/interface/src/tfm_sst_api.c b/interface/src/tfm_sst_api.c
index fb13ed0..99d9d38 100644
--- a/interface/src/tfm_sst_api.c
+++ b/interface/src/tfm_sst_api.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017, Arm Limited. All rights reserved.
+ * Copyright (c) 2017-2018, Arm Limited. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  *
@@ -26,12 +26,12 @@
                                     0);
 }
 
-enum tfm_sst_err_t tfm_sst_get_attributes(uint32_t asset_handle,
-                                        struct tfm_sst_attribs_t* attrib_struct)
+enum tfm_sst_err_t tfm_sst_get_info(uint32_t asset_handle,
+                                    struct tfm_sst_asset_info_t *info)
 {
-    return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_GET_ATTRIBUTES,
-                                    (uint32_t)asset_handle,
-                                    (uint32_t)attrib_struct,
+    return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_GET_INFO,
+                                    asset_handle,
+                                    (uint32_t)info,
                                     0,
                                     0);
 }
diff --git a/interface/src/tfm_sst_svc_handler.c b/interface/src/tfm_sst_svc_handler.c
index c10432e..31ca9bd 100644
--- a/interface/src/tfm_sst_svc_handler.c
+++ b/interface/src/tfm_sst_svc_handler.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017, Arm Limited. All rights reserved.
+ * Copyright (c) 2017-2018, Arm Limited. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  *
@@ -30,14 +30,14 @@
     return tfm_sst_veneer_create(app_id, asset_uuid);
 }
 
-enum tfm_sst_err_t tfm_sst_svc_get_attributes(uint32_t asset_handle,
-                                        struct tfm_sst_attribs_t* attrib_struct)
+enum tfm_sst_err_t tfm_sst_svc_get_info(uint32_t asset_handle,
+                                        struct tfm_sst_asset_info_t *info)
 {
     uint32_t app_id;
 
     app_id = tfm_sst_get_cur_id();
 
-    return tfm_sst_veneer_get_attributes(app_id, asset_handle, attrib_struct);
+    return tfm_sst_veneer_get_info(app_id, asset_handle, info);
 }
 
 enum tfm_sst_err_t tfm_sst_svc_read(uint32_t asset_handle,
