diff --git a/aleksis/apps/chronos/schema/__init__.py b/aleksis/apps/chronos/schema/__init__.py
index 3256538caf430cab18d8c1a032e233838457914f..baf9088d3aa466115ecdce06733e173cd1abae8c 100644
--- a/aleksis/apps/chronos/schema/__init__.py
+++ b/aleksis/apps/chronos/schema/__init__.py
@@ -194,10 +194,10 @@ class SubstitutionType(graphene.ObjectType):
             return None
         elif not le.amends.subject and not le.subject:
             return le.title
-        elif le.subject and le.samends.subject:
+        elif le.subject and le.amends.subject:
             return le.subject
         else:
-            return []
+            return None
 
     def resolve_old_rooms(root, object):
         le = root['REFERENCE_OBJECT']
@@ -227,7 +227,7 @@ class Query(graphene.ObjectType):
     timetable_groups = graphene.List(TimetableGroupType)
     timetable_rooms = graphene.List(TimetableRoomType)
     available_timetables = graphene.List(TimetableObjectType)
-    substitutions_for_date = graphene.List(
+    substitutions_for_date = graphene.Field(
         SubstitutionsForDateType,
         date=graphene.Date(),
     )
@@ -274,7 +274,7 @@ class Query(graphene.ObjectType):
 
     def resolve_substitutions_for_date(root, info, date):
         substitutions, affected_teachers, affected_groups = build_substitutions_list(get_next_relevant_day(date))
-        SubstitutionsForDateType(
+        return SubstitutionsForDateType(
             affected_teachers=affected_teachers,
             affected_groups=affected_groups,
             substitutions=[sub['el'] for sub in substitutions]