diff --git a/src/components/Map/Drawer/BioEntityDrawer/BioEntityDrawer.component.test.tsx b/src/components/Map/Drawer/BioEntityDrawer/BioEntityDrawer.component.test.tsx
index b2fad19919c2e14254360a5605259e32333a034c..d72d546ad3f2c54551eac6d45645dddd33d50cdb 100644
--- a/src/components/Map/Drawer/BioEntityDrawer/BioEntityDrawer.component.test.tsx
+++ b/src/components/Map/Drawer/BioEntityDrawer/BioEntityDrawer.component.test.tsx
@@ -17,6 +17,7 @@ import { getReduxStoreWithActionsListener } from '@/utils/testing/getReduxStoreA
 import { InitialStoreState } from '@/utils/testing/getReduxWrapperWithStore';
 import { act, render, screen } from '@testing-library/react';
 import { MockStoreEnhanced } from 'redux-mock-store';
+import { getTypeBySBOTerm } from '@/utils/bioEntity/getTypeBySBOTerm';
 import { BioEntityDrawer } from './BioEntityDrawer.component';
 
 const renderComponent = (
@@ -91,7 +92,9 @@ describe('BioEntityDrawer - component', () => {
         },
       });
 
-      expect(screen.getByText(bioEntity.stringType, { exact: false })).toBeInTheDocument();
+      const bioEntityType = getTypeBySBOTerm(bioEntity.sboTerm);
+
+      expect(screen.getByText(bioEntityType, { exact: false })).toBeInTheDocument();
       expect(screen.getByText(bioEntity.name, { exact: false })).toBeInTheDocument();
     });
 
diff --git a/src/components/Map/Drawer/BioEntityDrawer/BioEntityDrawer.component.tsx b/src/components/Map/Drawer/BioEntityDrawer/BioEntityDrawer.component.tsx
index 06e815d3c8bb534d50a118613f64a912e222aac6..42c5a1f9659b1a26b3024907b5830427cbb59b84 100644
--- a/src/components/Map/Drawer/BioEntityDrawer/BioEntityDrawer.component.tsx
+++ b/src/components/Map/Drawer/BioEntityDrawer/BioEntityDrawer.component.tsx
@@ -13,6 +13,7 @@ import { useAppSelector } from '@/redux/hooks/useAppSelector';
 import { DrawerHeading } from '@/shared/DrawerHeading';
 import { ElementSearchResultType } from '@/types/models';
 import { CommentItem } from '@/components/Map/Drawer/BioEntityDrawer/Comments/CommentItem.component';
+import { getTypeBySBOTerm } from '@/utils/bioEntity/getTypeBySBOTerm';
 import { CollapsibleSection } from '../ExportDrawer/CollapsibleSection';
 import { AnnotationItem } from './AnnotationItem';
 import { AssociatedSubmap } from './AssociatedSubmap';
@@ -43,12 +44,14 @@ export const BioEntityDrawer = (): React.ReactNode => {
   const isReferenceAvailable = bioEntityData.references.length > ZERO;
   const isCommentAvailable = commentsData.length > ZERO;
 
+  const type = getTypeBySBOTerm(bioEntityData.sboTerm);
+
   return (
     <div className="h-calc-drawer" data-testid="bioentity-drawer">
       <DrawerHeading
         title={
           <>
-            <span className="font-normal">{bioEntityData.stringType}:</span>&nbsp;
+            <span className="font-normal">{type}:</span>&nbsp;
             {bioEntityData.name}
           </>
         }
diff --git a/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.component.test.tsx b/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.component.test.tsx
index cbf1cca869b238baa7dbff62e1c4987137abeda1..e2d365f6b978ff8e05c5a21732e9c2640cd74e63 100644
--- a/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.component.test.tsx
+++ b/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.component.test.tsx
@@ -13,6 +13,7 @@ import {
 import { render, screen } from '@testing-library/react';
 import { act } from 'react-dom/test-utils';
 import { MockStoreEnhanced } from 'redux-mock-store';
+import { getTypeBySBOTerm } from '@/utils/bioEntity/getTypeBySBOTerm';
 import { BioEntitiesPinsListItem } from './BioEntitiesPinsListItem.component';
 import { PinListBioEntity } from './BioEntitiesPinsListItem.types';
 
@@ -97,9 +98,9 @@ describe('BioEntitiesPinsListItem - component ', () => {
   it('should display string type of bio entity element', () => {
     renderComponent(BIO_ENTITY.name, BIO_ENTITY, INITIAL_STORE_WITH_ENTITY_NUMBER);
 
-    const bioEntityStringType = BIO_ENTITY.stringType;
+    const bioEntityType = getTypeBySBOTerm(BIO_ENTITY.sboTerm);
 
-    expect(screen.getByText(bioEntityStringType, { exact: false })).toBeInTheDocument();
+    expect(screen.getByText(bioEntityType, { exact: false })).toBeInTheDocument();
   });
   it('should display synonyms of bio entity element', () => {
     renderComponent(BIO_ENTITY.name, BIO_ENTITY, INITIAL_STORE_WITH_ENTITY_NUMBER);
diff --git a/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.component.tsx b/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.component.tsx
index 65f10b3045fe54f23f78ae8b71d66505b96d4b87..852b85e71379ecb414ac74d0100a79782d950629 100644
--- a/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.component.tsx
+++ b/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.component.tsx
@@ -16,6 +16,7 @@ import { setMapPosition } from '@/redux/map/map.slice';
 import { resetReactionsData } from '@/redux/reactions/reactions.slice';
 import { getSearchData } from '@/redux/search/search.thunks';
 import { twMerge } from 'tailwind-merge';
+import { getTypeBySBOTerm } from '@/utils/bioEntity/getTypeBySBOTerm';
 import { PinListBioEntity } from './BioEntitiesPinsListItem.types';
 import { isPinWithCoordinates } from './BioEntitiesPinsListItem.utils';
 
@@ -59,6 +60,8 @@ export const BioEntitiesPinsListItem = ({
     dispatch(openSearchDrawerWithSelectedTab(getDefaultSearchTab(searchValues)));
   };
 
+  const type = getTypeBySBOTerm(pin.sboTerm);
+
   return (
     <div className="mb-4 flex w-full flex-col gap-3 rounded-lg border-[1px] border-solid border-greyscale-500 p-4">
       <div className="flex w-full flex-row items-center gap-2">
@@ -71,7 +74,7 @@ export const BioEntitiesPinsListItem = ({
           <img src={pinIconCanvas.toDataURL()} alt="pin icon" />
         </button>
         <p>
-          {pin.stringType ? `${pin.stringType}: ` : ''}
+          {type ? `${type}: ` : ''}
           <span
             className="w-full cursor-pointer font-bold underline"
             onClick={handleSearchMapForPin}
diff --git a/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.types.ts b/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.types.ts
index 4fe4314ac40d53fd644441e26ef332cb3c7c4d5d..a916a1dc7f9da06081d656579c979b307e6f010f 100644
--- a/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.types.ts
+++ b/src/components/Map/Drawer/SearchDrawerWrapper/BioEntitiesResultsList/BioEntitiesPinsList/BioEntitiesPinsListItem/BioEntitiesPinsListItem.types.ts
@@ -2,11 +2,11 @@ import { BioEntity } from '@/types/models';
 
 export type PinListBioEntity = Pick<BioEntity, 'synonyms' | 'references'> & {
   symbol?: BioEntity['symbol'];
-  stringType?: BioEntity['stringType'];
   fullName?: BioEntity['fullName'];
   x?: BioEntity['x'];
   y?: BioEntity['y'];
   elementId?: BioEntity['elementId'];
+  sboTerm?: BioEntity['sboTerm'];
 };
 
 export type PinListBioEntityWithCoords = PinListBioEntity & {
diff --git a/src/components/Map/Drawer/SearchDrawerWrapper/GroupedSearchResults/BioEntitiesAccordion/BioEntitiesAccordion.component.test.tsx b/src/components/Map/Drawer/SearchDrawerWrapper/GroupedSearchResults/BioEntitiesAccordion/BioEntitiesAccordion.component.test.tsx
index a1bec280f9de88ba0b354c552d180ac34f3e16dd..5067368d3757c24aefc2457d3e0f28d7e9c18fe0 100644
--- a/src/components/Map/Drawer/SearchDrawerWrapper/GroupedSearchResults/BioEntitiesAccordion/BioEntitiesAccordion.component.test.tsx
+++ b/src/components/Map/Drawer/SearchDrawerWrapper/GroupedSearchResults/BioEntitiesAccordion/BioEntitiesAccordion.component.test.tsx
@@ -96,9 +96,9 @@ describe('BioEntitiesAccordion - component', () => {
     });
 
     expect(screen.getByText('Content (10)')).toBeInTheDocument();
-    expect(screen.getByText('Core PD map (3)')).toBeInTheDocument();
+    expect(screen.getByText('Core PD map (4)')).toBeInTheDocument();
     expect(screen.getByText('Histamine signaling (4)')).toBeInTheDocument();
-    expect(screen.getByText('PRKN substrates (3)')).toBeInTheDocument();
+    expect(screen.getByText('PRKN substrates (2)')).toBeInTheDocument();
   });
 
   it('should fire toggleIsContentTabOpened on accordion item button click', () => {
diff --git a/src/components/Map/Drawer/SearchDrawerWrapper/ResultsList/PinsList/PinsListItem/PinsListItem.component.test.tsx b/src/components/Map/Drawer/SearchDrawerWrapper/ResultsList/PinsList/PinsListItem/PinsListItem.component.test.tsx
index b1d74b817a28845a1f3b4f7f48374e864a5b6517..bcb63ba44430a300465929d2bc330f3c2d242848 100644
--- a/src/components/Map/Drawer/SearchDrawerWrapper/ResultsList/PinsList/PinsListItem/PinsListItem.component.test.tsx
+++ b/src/components/Map/Drawer/SearchDrawerWrapper/ResultsList/PinsList/PinsListItem/PinsListItem.component.test.tsx
@@ -144,7 +144,7 @@ describe('PinsListItem - component ', () => {
 
     expect(screen.queryByText('Available in submaps:')).toBeNull();
   });
-  it('should call setMapPosition if coordinates exist in bioentity element', () => {
+  it('should call setMapPosition if coordinates exist in bioEntity element', () => {
     const { store } = renderComponent(
       DRUGS_PIN.name,
       DRUGS_PIN.pin,
@@ -159,7 +159,7 @@ describe('PinsListItem - component ', () => {
         map: {
           data: {
             ...initialMapDataFixture,
-            modelId: 5053,
+            modelId: BIO_ENTITY.model,
           },
           loading: 'succeeded',
           error: { message: '', name: '' },
@@ -192,7 +192,7 @@ describe('PinsListItem - component ', () => {
         map: {
           data: {
             ...initialMapDataFixture,
-            modelId: 5053,
+            modelId: BIO_ENTITY.model,
           },
           loading: 'succeeded',
           error: { message: '', name: '' },
diff --git a/src/components/Map/Drawer/SearchDrawerWrapper/ResultsList/PinsList/PinsListItem/PinsListItem.component.tsx b/src/components/Map/Drawer/SearchDrawerWrapper/ResultsList/PinsList/PinsListItem/PinsListItem.component.tsx
index 2ec3d41b3582b1ad944ad8554407a020a8cdc8e9..510763ad3763e75131c61b0bde95796dd9edd1d3 100644
--- a/src/components/Map/Drawer/SearchDrawerWrapper/ResultsList/PinsList/PinsListItem/PinsListItem.component.tsx
+++ b/src/components/Map/Drawer/SearchDrawerWrapper/ResultsList/PinsList/PinsListItem/PinsListItem.component.tsx
@@ -91,15 +91,14 @@ export const PinsListItem = ({
         <div className="font-bold">Elements:</div>
         {'targetParticipants' in pin &&
           pin.targetParticipants.map(participant => {
-            if (!participant?.link) {
-              return null;
-            }
-
             return (
               // participant.id is almost always = 0
-              <li key={`${participant.id}-${participant.link}`} className="my-2 px-2">
+              <li
+                key={`${participant.id}-${participant.type}-${participant.resource}`}
+                className="my-2 px-2"
+              >
                 <a
-                  href={participant.link}
+                  href={participant.link ? participant.link : undefined}
                   target="_blank"
                   className="cursor-pointer text-primary-500 underline"
                 >
diff --git a/src/models/bioEntitySchema.ts b/src/models/bioEntitySchema.ts
index 187b1982bf1f7273d6694aca1a6a725d097c6f1a..ee025b2c5d30a12083dff6af22f8f1d13733e729 100644
--- a/src/models/bioEntitySchema.ts
+++ b/src/models/bioEntitySchema.ts
@@ -12,7 +12,6 @@ import { submodelSchema } from './submodelSchema';
 
 export const bioEntitySchema = z.object({
   id: z.union([z.number().int().positive(), z.string()]),
-  stringType: z.string(),
   name: z.string(),
   elementId: z.string(),
   model: z.number(),
@@ -91,4 +90,5 @@ export const bioEntitySchema = z.object({
   processCoordinates: z.optional(z.null()),
   line: z.optional(lineSchema),
   operators: z.optional(z.array(operatorSchema)),
+  sboTerm: z.string(),
 });
diff --git a/src/models/overlayLeftBioEntitySchema.ts b/src/models/overlayLeftBioEntitySchema.ts
index 5e751d72037cb7131dd7b6502a58a733d0d38ec6..bd0431d48ebe6109f44d23fc08c8879bdf6d14b0 100644
--- a/src/models/overlayLeftBioEntitySchema.ts
+++ b/src/models/overlayLeftBioEntitySchema.ts
@@ -46,7 +46,7 @@ export const overlayLeftBioEntitySchema = z.object({
   boundaryCondition: z.boolean().optional(),
   constant: z.boolean().nullable().optional(),
   modificationResidues: z.unknown(),
-  stringType: z.string(),
   substanceUnits: z.boolean().nullable().optional(),
   references: z.array(referenceSchema),
+  sboTerm: z.string(),
 });
diff --git a/src/models/overlayLeftReactionSchema.ts b/src/models/overlayLeftReactionSchema.ts
index c47febcff7136233ac38e7d4c41c6eb3d85c2144..b7663c41b56d7c54cc93982db5fe009c55960149 100644
--- a/src/models/overlayLeftReactionSchema.ts
+++ b/src/models/overlayLeftReactionSchema.ts
@@ -24,11 +24,11 @@ export const overlayLeftReactionSchema = z.object({
   kinetics: z.null(),
   line: lineSchema,
   processCoordinates: z.null(),
-  stringType: z.string(),
   modifiers: z.array(reactionProduct),
   reactants: z.array(reactionProduct),
   products: z.array(reactionProduct),
   elementId: z.string(),
   operators: z.array(z.unknown()),
   references: z.array(referenceSchema),
+  sboTerm: z.string(),
 });
diff --git a/src/utils/bioEntity/getTypeBySBOTerm.ts b/src/utils/bioEntity/getTypeBySBOTerm.ts
new file mode 100644
index 0000000000000000000000000000000000000000..b3d536a21e12c22eaf15235693190a089086d798
--- /dev/null
+++ b/src/utils/bioEntity/getTypeBySBOTerm.ts
@@ -0,0 +1,3 @@
+export const getTypeBySBOTerm = (sbo: string | undefined): string => {
+  return sbo || '';
+};