diff --git a/pkg/services/tree/service.go b/pkg/services/tree/service.go index 374e80ae..4506095e 100644 --- a/pkg/services/tree/service.go +++ b/pkg/services/tree/service.go @@ -308,12 +308,13 @@ func (s *Service) GetNodeByPath(ctx context.Context, req *GetNodeByPathRequest) info := make([]*GetNodeByPathResponse_Info, 0, len(nodes)) for _, node := range nodes { - m, _, err := s.forest.TreeGetMeta(cid, b.GetTreeId(), node) + m, parent, err := s.forest.TreeGetMeta(cid, b.GetTreeId(), node) if err != nil { return nil, err } var x GetNodeByPathResponse_Info + x.ParentId = parent x.NodeId = node x.Timestamp = m.Time if b.AllAttributes { diff --git a/pkg/services/tree/service.pb.go b/pkg/services/tree/service.pb.go index a278e582..1f4a74c6 100644 Binary files a/pkg/services/tree/service.pb.go and b/pkg/services/tree/service.pb.go differ diff --git a/pkg/services/tree/service.proto b/pkg/services/tree/service.proto index 94741c4d..43aba82c 100644 --- a/pkg/services/tree/service.proto +++ b/pkg/services/tree/service.proto @@ -202,6 +202,8 @@ message GetNodeByPathResponse { uint64 timestamp = 2; // Node meta-information. repeated KeyValue meta = 3; + // Parent ID. + uint64 parent_id = 4; } message Body { // List of nodes stored by path. diff --git a/pkg/services/tree/service_grpc.pb.go b/pkg/services/tree/service_grpc.pb.go index 7de60958..091f30c5 100644 Binary files a/pkg/services/tree/service_grpc.pb.go and b/pkg/services/tree/service_grpc.pb.go differ diff --git a/pkg/services/tree/service_neofs.pb.go b/pkg/services/tree/service_neofs.pb.go index eb4b2b47..0eea38fe 100644 Binary files a/pkg/services/tree/service_neofs.pb.go and b/pkg/services/tree/service_neofs.pb.go differ diff --git a/pkg/services/tree/types.pb.go b/pkg/services/tree/types.pb.go index 5a217307..5dac12d5 100644 Binary files a/pkg/services/tree/types.pb.go and b/pkg/services/tree/types.pb.go differ