diff --git a/gso/workflows/router/update_ibgp_mesh.py b/gso/workflows/router/update_ibgp_mesh.py
index 32353fcf12856cf73e76b2ad16d6a8e87c72d4ad..9f0b8ac88ce403f31fb339f2a7970efc8ab4e4ee 100644
--- a/gso/workflows/router/update_ibgp_mesh.py
+++ b/gso/workflows/router/update_ibgp_mesh.py
@@ -75,7 +75,7 @@ def _generate_pe_inventory(pe_router_list: list[Router]) -> dict[str, Any]:
 
 @step("[DRY RUN] Add P router to iBGP mesh")
 def add_p_to_mesh_dry(
-    subscription: Router, callback_route: str, pe_router_list: list[Router], tt_number: str, process_id: UUIDstr
+    subscription: dict[str, Any], callback_route: str, pe_router_list: list[Router], tt_number: str, process_id: UUIDstr
 ) -> None:
     """Perform a dry run of adding the new P router to the PE router mesh."""
     extra_vars = {
@@ -95,7 +95,7 @@ def add_p_to_mesh_dry(
 
 @step("[FOR REAL] Add P router to iBGP mesh")
 def add_p_to_mesh_real(
-    subscription: Router, callback_route: str, pe_router_list: list[Router], tt_number: str, process_id: UUIDstr
+    subscription: dict[str, Any], callback_route: str, pe_router_list: list[Router], tt_number: str, process_id: UUIDstr
 ) -> None:
     """Add the P router to the mesh of PE routers."""
     extra_vars = {
@@ -115,7 +115,7 @@ def add_p_to_mesh_real(
 
 @step("[DRY RUN] Add all PE routers to P router iBGP table")
 def add_all_pe_to_p_dry(
-    subscription: Router, pe_router_list: list[Router], callback_route: str, tt_number: str, process_id: UUIDstr
+    subscription: dict[str, Any], pe_router_list: list[Router], callback_route: str, tt_number: str, process_id: UUIDstr
 ) -> None:
     """Perform a dry run of adding the list of all PE routers to the new P router."""
     extra_vars = {
@@ -136,14 +136,14 @@ def add_all_pe_to_p_dry(
     provisioning_proxy.execute_playbook(
         playbook_name="update_ibgp_mesh.yaml",
         callback_route=callback_route,
-        inventory=subscription.router.router_fqdn,
+        inventory=subscription["router"]["router_fqdn"],
         extra_vars=extra_vars,
     )
 
 
 @step("[FOR REAL] Add all PE routers to P router iBGP table")
 def add_all_pe_to_p_real(
-    subscription: Router, pe_router_list: list[Router], callback_route: str, tt_number: str, process_id: UUIDstr
+    subscription: dict[str, Any], pe_router_list: list[Router], callback_route: str, tt_number: str, process_id: UUIDstr
 ) -> None:
     """Add the list of all PE routers to the new P router."""
     extra_vars = {
@@ -164,7 +164,7 @@ def add_all_pe_to_p_real(
     provisioning_proxy.execute_playbook(
         playbook_name="update_ibgp_mesh.yaml",
         callback_route=callback_route,
-        inventory=subscription.router.router_fqdn,
+        inventory=subscription["router"]["router_fqdn"],
         extra_vars=extra_vars,
     )