Index: backend/backend/urls.py
===================================================================
--- backend/backend/urls.py	(revision c9ac0c2401f6171af77d58c1dbb84c26b5e4a62f)
+++ backend/backend/urls.py	(revision dabe3ce0563bcd1057353c556ab176671974eb5e)
@@ -23,5 +23,5 @@
     path('subjects/', all_subjects),
     path('suggestion/', get_suggestions),
-    path('subjects/<int:pk>/', subject_view),
+    path('subjects/<str:code>/', subject_view),
     path('auth/', include('auth_form.urls')),
     path('', index),
Index: backend/subjects/views.py
===================================================================
--- backend/subjects/views.py	(revision c9ac0c2401f6171af77d58c1dbb84c26b5e4a62f)
+++ backend/subjects/views.py	(revision dabe3ce0563bcd1057353c556ab176671974eb5e)
@@ -18,6 +18,6 @@
 
 @api_view(['GET'])
-def subject_view(request, pk):
-    subject = Subject.objects.get(pk=pk)
+def subject_view(request, code):
+    subject = Subject.objects.get(code=code)
     serializer = SubjectSerializer(subject)
     return Response(serializer.data)
Index: frontend/src/components/SubjectCatalog/SubjectList.tsx
===================================================================
--- frontend/src/components/SubjectCatalog/SubjectList.tsx	(revision c9ac0c2401f6171af77d58c1dbb84c26b5e4a62f)
+++ frontend/src/components/SubjectCatalog/SubjectList.tsx	(revision dabe3ce0563bcd1057353c556ab176671974eb5e)
@@ -15,5 +15,5 @@
 	const navigate = useNavigate();
 	const openSubjectView = (subject: Subject) => {
-		navigate(`/subjects/${subject.id}`, {
+		navigate(`/subjects/${subject.code}`, {
 			state: { from: "/subjects" },
 		});
Index: frontend/src/pages/Recommendations.tsx
===================================================================
--- frontend/src/pages/Recommendations.tsx	(revision c9ac0c2401f6171af77d58c1dbb84c26b5e4a62f)
+++ frontend/src/pages/Recommendations.tsx	(revision dabe3ce0563bcd1057353c556ab176671974eb5e)
@@ -67,5 +67,5 @@
 
 	const openSubjectView = (subject: Subject) => {
-		navigate(`/subjects/${subject.id}`, {
+		navigate(`/subjects/${subject.code}`, {
 			state: { from: "/recommendations" },
 		});
Index: frontend/src/pages/SubjectView.tsx
===================================================================
--- frontend/src/pages/SubjectView.tsx	(revision c9ac0c2401f6171af77d58c1dbb84c26b5e4a62f)
+++ frontend/src/pages/SubjectView.tsx	(revision dabe3ce0563bcd1057353c556ab176671974eb5e)
@@ -17,5 +17,5 @@
 	const [isExpanded, setIsExpanded] = useState(false);
 	const [filteredTechonologies, setFilteredTechnologies] = useState([]);
-	const { id } = useParams();
+	const { code } = useParams();
 	const navigate = useNavigate();
 	const location = useLocation();
@@ -44,5 +44,5 @@
 
 	useEffect(() => {
-		fetch(`http://localhost:8000/subjects/${id}/`)
+		fetch(`http://localhost:8000/subjects/${code}/`)
 			.then((res) => res.json())
 			.then((data) => {
