diff --git a/gso/products/__init__.py b/gso/products/__init__.py
index 857128fb672bf6350e674bfc81e8d89fa2765af2..b8b60c156ba992f6394d41035f9b66b3b3645fbd 100644
--- a/gso/products/__init__.py
+++ b/gso/products/__init__.py
@@ -2,11 +2,9 @@ from orchestrator.domain import SUBSCRIPTION_MODEL_REGISTRY
 
 from gso.products.product_types.device import Device
 from gso.products.product_types.iptrunk import Iptrunk
-from gso.products.product_types.site import Site
 
 SUBSCRIPTION_MODEL_REGISTRY.update(
     {
-        "Site": Site,
         "Router": Device,
         "Switch": Device,
         "Iptrunk": Iptrunk,
diff --git a/gso/products/product_blocks/device.py b/gso/products/product_blocks/device.py
index 44581ef557c9f49fe51f7633ac919267e0a68a84..9e34743f2e1e2eea7f3610cd6e3cab616061e020 100644
--- a/gso/products/product_blocks/device.py
+++ b/gso/products/product_blocks/device.py
@@ -2,62 +2,62 @@ from typing import Optional
 
 from orchestrator.domain.base import ProductBlockModel
 from orchestrator.types import SubscriptionLifecycle
-from gso.products.product_blocks.site \
-    import SiteBlock, SiteBlockInactive, SiteBlockProvisioning
 import ipaddress
 
-class DeviceVendor(strEnum):
-    juniper = "juniper"
-    nokia = "nokia"
-
-class DeviceRole(strEnum):
-    p = "p"
-    pe = "pe"
-    amt = "amt"
 
 class DeviceBlockInactive(ProductBlockModel,
                           lifecycle=[SubscriptionLifecycle.INITIAL],
                           product_block_name="DeviceBlock"):
-    device_fqdn: Optional[str] = None
-    device_ts_address: Optional[str] = None
-    device_ts_port: Optional[int] = None
-    device_lo_ipv4_address: Optional[ipaddress.IPv4Address] = None
-    device_lo_ipv6_address: Optional[ipaddress.IPv6Address] = None
-    device_lo_iso_address: Optional[str] = None
-    device_si_ipv4_network: Optional[ipaddress.IPv4Network] = None
-    device_ias_lt_ipv4_network: Optional[ipaddress.IPv4Network] = None
-    device_ias_lt_ipv6_network: Optional[ipaddress.IPv6Network] = None
-    device_vendor: Optional[DeviceVendor] = None
-    device_role: Optional[DeviceRole] = None
-    device_site: Optional[SiteBlockInactive]
+    fqdn: Optional[str] = None
+    ts_address: Optional[str] = None
+    ts_port: Optional[int] = None
+    lo_ipv4_address: Optional[ipaddress.IPv4Address] = None
+    lo_ipv6_address: Optional[ipaddress.IPv6Address] = None
+    lo_iso_address: Optional[str] = None
+    si_ipv4_network: Optional[ipaddress.IPv4Network] = None
+    ias_lt_ipv4_network: Optional[ipaddress.IPv4Network] = None
+    ias_lt_ipv6_network: Optional[ipaddress.IPv6Network] = None
+    site_city: Optional[str] = None
+    site_country: Optional[str] = None
+    site_country_code: Optional[str] = None
+    site_latitude: Optional[str] = None
+    site_longitude: Optional[str] = None
+    snmp_location: Optional[str] = None
 
 
 class DeviceBlockProvisioning(DeviceBlockInactive,
                               lifecycle=[SubscriptionLifecycle.PROVISIONING]):
-    device_fqdn: str
-    device_ts_address: str
-    device_ts_port: str
-    device_lo_ipv4_address: Optional[ipaddress.IPv4Address] = None
-    device_lo_ipv6_address: Optional[ipaddress.IPv6Address] = None
-    device_lo_iso_address: Optional[str] = None
-    device_si_ipv4_network: Optional[ipaddress.IPv4Network] = None
-    device_ias_lt_ipv4_network: Optional[ipaddress.IPv4Network] = None
-    device_ias_lt_ipv6_network: Optional[ipaddress.IPv6Network] = None
-    device_vendor: Optional[DeviceVendor] = None
-    device_role: Optional[DeviceRole] = None
-    device_site: Optional[SiteBlockProvisioning]
+    fqdn: str
+    ts_address: str
+    ts_port: str
+    lo_ipv4_address: Optional[ipaddress.IPv4Address] = None
+    lo_ipv6_address: Optional[ipaddress.IPv6Address] = None
+    lo_iso_address: Optional[str] = None
+    si_ipv4_network: Optional[ipaddress.IPv4Network] = None
+    ias_lt_ipv4_network: Optional[ipaddress.IPv4Network] = None
+    ias_lt_ipv6_network: Optional[ipaddress.IPv6Network] = None
+    site_city: Optional[str] = None
+    site_country: Optional[str] = None
+    site_country_code: Optional[str] = None
+    site_latitude: Optional[str] = None
+    site_longitude: Optional[str] = None
+    snmp_location: Optional[str] = None
+
 
 class DeviceBlock(DeviceBlockProvisioning,
                   lifecycle=[SubscriptionLifecycle.ACTIVE]):
-    device_fqdn: str
-    device_ts_address: str
-    device_ts_port: str
-    device_lo_ipv4_address: ipaddress.IPv4Address
-    device_lo_ipv6_address: ipaddress.IPv6Address
-    device_lo_iso_address: str
-    device_si_ipv4_network: ipaddress.IPv4Network
-    device_ias_lt_ipv4_network: ipaddress.IPv4Network
-    device_ias_lt_ipv6_network: ipaddress.IPv6Network
-    device_vendor: DeviceVendor
-    device_role: DeviceRole
-    device_site: SiteBlock
+    fqdn: str
+    ts_address: str
+    ts_port: str
+    lo_ipv4_address: ipaddress.IPv4Address
+    lo_ipv6_address: ipaddress.IPv6Address
+    lo_iso_address: str
+    si_ipv4_network: ipaddress.IPv4Network
+    ias_lt_ipv4_network: ipaddress.IPv4Network
+    ias_lt_ipv6_network: ipaddress.IPv6Network
+    site_city: str
+    site_country: str
+    site_country_code: str
+    site_latitude: str
+    site_longitude: str
+    snmp_location: str
diff --git a/gso/products/product_blocks/site.py b/gso/products/product_blocks/site.py
deleted file mode 100644
index 564dd811dc9333f1a662bf75c1b3b3e39ada1e4f..0000000000000000000000000000000000000000
--- a/gso/products/product_blocks/site.py
+++ /dev/null
@@ -1,51 +0,0 @@
-from typing import Optional
-from pydantic import Field
-
-from orchestrator.domain.base import ProductBlockModel
-from orchestrator.types import SubscriptionLifecycle, Enum
-
-import ipaddress
-
-class SiteTier(Enum):
-    tier1 = 1
-    tier2 = 2
-    tier3 = 3
-    tier4 = 4
-
-
-class SiteBlockInactive(ProductBlockModel,
-                          lifecycle=[SubscriptionLifecycle.INITIAL],
-                          product_block_name="SiteBlock"):
-    site_name: Optional[str]
-    site_city: Optional[str]
-    site_country: Optional[str]
-    site_country_code: Optional[str]
-    site_latitude: Optional[float]
-    site_longitude: Optional[float]
-    site_internal_id: Optional[int]
-    site_bgp_id: Optional[int]
-    site_tier: Optional[SiteTier]
-
-class SiteBlockProvisioning(SiteBlockInactive,
-                            lifecycle=[SubscriptionLifecycle.PROVISIONING]):
-    site_name: Optional[str]
-    site_city: Optional[str]
-    site_country: Optional[str]
-    site_country_code: Optional[str]
-    site_latitude: Optional[float]
-    site_longitude: Optional[float]
-    site_internal_id: Optional[int]
-    site_bgp_id: Optional[int]
-    site_tier: Optional[SiteTier]
-
-class SiteBlock(SiteBlockProvisioning,
-                  lifecycle=[SubscriptionLifecycle.ACTIVE]):
-    site_name: str
-    site_city: str
-    site_country: str
-    site_country_code: str
-    site_latitude: float
-    site_longitude: float
-    site_internal_id: int
-    site_bgp_id: int
-    site_tier: SiteTier
\ No newline at end of file
diff --git a/gso/products/product_types/device.py b/gso/products/product_types/device.py
index 17a99081b68919cbc8d213251432db23fbee6146..e79762c12f9fae68b409955b9e4a5a49e08c75dc 100644
--- a/gso/products/product_types/device.py
+++ b/gso/products/product_types/device.py
@@ -10,14 +10,21 @@ class DeviceType(strEnum):
     switch = "switch"
 
 
+class DeviceVendor(strEnum):
+    Juniper = "Juniper"
+    Newvendor = "Newvendor"
+
+
 class DeviceInactive(SubscriptionModel, is_base=True):
     device_type: DeviceType
+    device_vendor: DeviceVendor
     device: DeviceBlockInactive
 
 
 class DeviceProvisioning(DeviceInactive,
                          lifecycle=[SubscriptionLifecycle.PROVISIONING]):
     device_type: DeviceType
+    device_vendor: DeviceVendor
     device: DeviceBlockProvisioning
 
 
diff --git a/gso/products/product_types/site.py b/gso/products/product_types/site.py
deleted file mode 100644
index 003e37d4962fbd8ac45b0d0d3e46fa4340ffb53a..0000000000000000000000000000000000000000
--- a/gso/products/product_types/site.py
+++ /dev/null
@@ -1,18 +0,0 @@
-from orchestrator.domain.base import SubscriptionModel
-from orchestrator.types import SubscriptionLifecycle, strEnum
-
-from gso.products.product_blocks.site \
-    import SiteBlock, SiteBlockInactive, SiteBlockProvisioning
-
-
-class SiteInactive(SubscriptionModel, is_base=True):
-    site: SiteBlockInactive
-
-
-class SiteProvisioning(SiteInactive,
-                         lifecycle=[SubscriptionLifecycle.PROVISIONING]):
-    site: SiteBlockProvisioning
-
-
-class Site(SiteProvisioning, lifecycle=[SubscriptionLifecycle.ACTIVE]):
-    site: SiteBlock
\ No newline at end of file