diff --git a/id/client.go b/id/client.go
index 704f8d5f27f756f1f65d73ab138f08cc090bdf7d..99c2cedf3e86a809be30fb3e2b4ab61ab93eb5ee 100644
--- a/id/client.go
+++ b/id/client.go
@@ -2,8 +2,6 @@ package id
 
 import (
 	"fmt"
-
-	"git.perx.ru/perxis/perxis-go/pkg/clients"
 )
 
 const (
@@ -62,6 +60,6 @@ func (id *ClientId) Validate() error {
 	return id.SpaceId.Validate()
 }
 
-func NewClientId(c clients.Client) *ObjectId {
-	return &ObjectId{Descriptor: &ClientId{SpaceId: SpaceId{SpaceID: c.SpaceID}, ClientID: c.ID}}
+func NewClientId(spaceID, id string) *ObjectId {
+	return &ObjectId{Descriptor: &ClientId{SpaceId: SpaceId{SpaceID: spaceID}, ClientID: id}}
 }
diff --git a/id/collection.go b/id/collection.go
index 6518513b59238f0377aafe495dd4cac1f43a8436..f507d66c85e35de208468243383c377f09c88259 100644
--- a/id/collection.go
+++ b/id/collection.go
@@ -2,8 +2,6 @@ package id
 
 import (
 	"fmt"
-
-	"git.perx.ru/perxis/perxis-go/pkg/collections"
 )
 
 const (
@@ -61,14 +59,6 @@ func (id *CollectionId) Validate() error {
 	return id.EnvironmentId.Validate()
 }
 
-func NewCollectionId(coll collections.Collection) *ObjectId {
-	return &ObjectId{Descriptor: &CollectionId{
-		EnvironmentId: EnvironmentId{
-			SpaceId: SpaceId{
-				SpaceID: coll.SpaceID,
-			},
-			EnvironmentID: coll.EnvID,
-		},
-		CollectionID: coll.ID,
-	}}
+func NewCollectionId(spaceID, envID, id string) *ObjectId {
+	return &ObjectId{Descriptor: &CollectionId{EnvironmentId: EnvironmentId{SpaceId: SpaceId{SpaceID: spaceID}, EnvironmentID: envID}, CollectionID: id}}
 }
diff --git a/id/environment.go b/id/environment.go
index 0da72195ae0e1bc9d9262e6b958f61c30c0a2f36..364529f681c2f9e4dc8c785eb338afc554ae3642 100644
--- a/id/environment.go
+++ b/id/environment.go
@@ -2,8 +2,6 @@ package id
 
 import (
 	"fmt"
-
-	"git.perx.ru/perxis/perxis-go/pkg/environments"
 )
 
 const (
@@ -61,11 +59,7 @@ func (id *EnvironmentId) Validate() error {
 	}
 	return id.SpaceId.Validate()
 }
-func NewEnvironmentId(env environments.Environment) *ObjectId {
-	return &ObjectId{Descriptor: &EnvironmentId{
-		SpaceId: SpaceId{
-			SpaceID: env.SpaceID,
-		},
-		EnvironmentID: env.ID,
-	}}
+
+func NewEnvironmentId(spaceID, id string) *ObjectId {
+	return &ObjectId{Descriptor: &EnvironmentId{SpaceId: SpaceId{SpaceID: spaceID}, EnvironmentID: id}}
 }
diff --git a/id/item.go b/id/item.go
index dbfb8e18cb5128fc0ab26a4298203a38a4af1ad6..968175a2cb4f4429199d8848bd9409828461b08a 100644
--- a/id/item.go
+++ b/id/item.go
@@ -2,8 +2,6 @@ package id
 
 import (
 	"fmt"
-
-	"git.perx.ru/perxis/perxis-go/pkg/items"
 )
 
 const (
@@ -64,17 +62,7 @@ func (i *ItemId) Validate() error {
 	}
 	return i.CollectionId.Validate()
 }
-func NewItemId(i items.Item) *ObjectId {
-	return &ObjectId{Descriptor: &ItemId{
-		CollectionId: CollectionId{
-			EnvironmentId: EnvironmentId{
-				SpaceId: SpaceId{
-					SpaceID: i.SpaceID,
-				},
-				EnvironmentID: i.EnvID,
-			},
-			CollectionID: i.CollectionID,
-		},
-		ItemID: i.ID,
-	}}
+
+func NewItemId(spaceID, envID, collID, id string) *ObjectId {
+	return &ObjectId{Descriptor: &ItemId{CollectionId: CollectionId{EnvironmentId: EnvironmentId{SpaceId: SpaceId{SpaceID: spaceID}, EnvironmentID: envID}, CollectionID: collID}, ItemID: id}}
 }
diff --git a/id/organization.go b/id/organization.go
index 03fd47fc9f51fbdb67c219c6a636f0f117d032c7..5aedfb709ef6ff5bde9fd7f06bcba49f07fbd643 100644
--- a/id/organization.go
+++ b/id/organization.go
@@ -2,8 +2,6 @@ package id
 
 import (
 	"fmt"
-
-	"git.perx.ru/perxis/perxis-go/pkg/organizations"
 )
 
 const (
@@ -57,6 +55,6 @@ func (id *OrganizationId) Validate() error {
 	return nil
 }
 
-func NewOrganizationId(o organizations.Organization) *ObjectId {
-	return &ObjectId{Descriptor: &OrganizationId{OrganizationID: o.ID}}
+func NewOrganizationId(id string) *ObjectId {
+	return &ObjectId{Descriptor: &OrganizationId{OrganizationID: id}}
 }
diff --git a/id/role.go b/id/role.go
index 4e507d92e6443a7bd890fd5ea0414c1fddebb3c3..d9f8f01989b5bb9cca5da38acad867356b4dea92 100644
--- a/id/role.go
+++ b/id/role.go
@@ -2,8 +2,6 @@ package id
 
 import (
 	"fmt"
-
-	"git.perx.ru/perxis/perxis-go/pkg/roles"
 )
 
 const (
@@ -61,11 +59,7 @@ func (id *RoleId) Validate() error {
 
 	return id.SpaceId.Validate()
 }
-func NewRoleId(r roles.Role) *ObjectId {
-	return &ObjectId{Descriptor: &RoleId{
-		SpaceId: SpaceId{
-			SpaceID: r.SpaceID,
-		},
-		RoleID: r.ID,
-	}}
+
+func NewRoleId(spaceID, id string) *ObjectId {
+	return &ObjectId{Descriptor: &RoleId{SpaceId: SpaceId{SpaceID: spaceID}, RoleID: id}}
 }
diff --git a/id/space.go b/id/space.go
index a9d88bc66ba8105f00825674a2015ea16779860f..9859a4788b05fb906f6a22f230a4b88366ab9311 100644
--- a/id/space.go
+++ b/id/space.go
@@ -2,8 +2,6 @@ package id
 
 import (
 	"fmt"
-
-	"git.perx.ru/perxis/perxis-go/pkg/spaces"
 )
 
 const (
@@ -58,6 +56,6 @@ func (id *SpaceId) Validate() error {
 	return nil
 }
 
-func NewSpaceId(s spaces.Space) *ObjectId {
-	return &ObjectId{Descriptor: &SpaceId{SpaceID: s.ID}}
+func NewSpaceId(id string) *ObjectId {
+	return &ObjectId{Descriptor: &SpaceId{SpaceID: id}}
 }
diff --git a/id/user.go b/id/user.go
index 8b4100b01039f5ebd65722e2521645304df31b04..85459c7e29e94bcaf3edce684ec2d28eb8669a50 100644
--- a/id/user.go
+++ b/id/user.go
@@ -2,8 +2,6 @@ package id
 
 import (
 	"fmt"
-
-	"git.perx.ru/perxis/perxis-go/pkg/users"
 )
 
 const (
@@ -57,6 +55,6 @@ func (id *UserId) Validate() error {
 	return nil
 }
 
-func NewUserId(u users.User) *ObjectId {
-	return &ObjectId{Descriptor: &UserId{UserID: u.ID}}
+func NewUserId(id string) *ObjectId {
+	return &ObjectId{Descriptor: &UserId{UserID: id}}
 }
diff --git a/log/zap/field_test.go b/log/zap/field_test.go
index ef2e7efff4e0bdbf1a4087ae1644453914bbcfab..ead5af2386b5606a3861dc563ba6e49a6ed43f7b 100644
--- a/log/zap/field_test.go
+++ b/log/zap/field_test.go
@@ -72,7 +72,7 @@ func TestObjectID(t *testing.T) {
 	}
 
 	oid := id.MustObjectId(item)
-	itemId := id.NewItemId(*item)
+	itemId := id.NewItemId(item.SpaceID, item.EnvID, item.CollectionID, item.ID)
 
 	tests := []struct {
 		name  string
@@ -102,7 +102,7 @@ func TestCallerID(t *testing.T) {
 	}
 
 	oid := id.MustObjectId(user)
-	userId := id.NewUserId(*user)
+	userId := id.NewUserId(user.ID)
 
 	tests := []struct {
 		name  string