diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/absences/absenceCreation.graphql b/aleksis/apps/alsijil/frontend/components/coursebook/absences/absenceCreation.graphql
index 21ce30d0b871bcfbd9a5b40b671a8594948a2569..5a520453f35062d49edd5eb82aca291384e2f739 100644
--- a/aleksis/apps/alsijil/frontend/components/coursebook/absences/absenceCreation.graphql
+++ b/aleksis/apps/alsijil/frontend/components/coursebook/absences/absenceCreation.graphql
@@ -6,7 +6,7 @@ query persons {
   }
 }
 
-query lessonsForPersons($persons: [ID]!, $start: Date!, $end: Date!) {
+query lessonsForPersons($persons: [ID]!, $start: DateTime!, $end: DateTime!) {
   items: lessonsForPersons(persons: $persons, start: $start, end: $end) {
     id
     lessons {
@@ -31,8 +31,8 @@ query lessonsForPersons($persons: [ID]!, $start: Date!, $end: Date!) {
 # Use absencesInputType?
 mutation createAbsencesForPersons(
   $persons: [ID]!
-  $start: Date!
-  $end: Date!
+  $start: DateTime!
+  $end: DateTime!
   $comment: String
   $reason: ID!
 ) {
diff --git a/aleksis/apps/alsijil/schema/__init__.py b/aleksis/apps/alsijil/schema/__init__.py
index f63b8c2c9b8c5c029371e4663f6d70b2e5271bb8..ab87c4306cd144d4c5f27c00914aceeb865584a7 100644
--- a/aleksis/apps/alsijil/schema/__init__.py
+++ b/aleksis/apps/alsijil/schema/__init__.py
@@ -63,8 +63,8 @@ class Query(graphene.ObjectType):
     lessons_for_persons = graphene.List(
         LessonsForPersonType,
         persons=graphene.List(graphene.ID, required=True),
-        start=graphene.Date(required=True),
-        end=graphene.Date(required=True),
+        start=graphene.DateTime(required=True),
+        end=graphene.DateTime(required=True),
     )
 
     extra_marks = FilterOrderList(ExtraMarkType)
@@ -213,8 +213,8 @@ class Query(graphene.ObjectType):
         for person in persons:
             docs, dummies = Documentation.get_documentations_for_person(
                 person,
-                datetime.combine(start, datetime.min.time()),
-                datetime.combine(end, datetime.max.time()),
+                start,
+                end,
             )
 
             lessons_for_person.append(LessonsForPersonType(id=person, lessons=docs + dummies))
diff --git a/aleksis/apps/alsijil/schema/absences.py b/aleksis/apps/alsijil/schema/absences.py
index d05ac55214a36430808bd17ec22cc2f4c6767313..dcfe1427e18dd037c928b9bcf478aa4ecbc3e42c 100644
--- a/aleksis/apps/alsijil/schema/absences.py
+++ b/aleksis/apps/alsijil/schema/absences.py
@@ -14,8 +14,8 @@ from .participation_status import ParticipationStatusType
 class AbsencesForPersonsCreateMutation(graphene.Mutation):
     class Arguments:
         persons = graphene.List(graphene.ID, required=True)
-        start = graphene.Date(required=True)
-        end = graphene.Date(required=True)
+        start = graphene.DateTime(required=True)
+        end = graphene.DateTime(required=True)
         comment = graphene.String(required=False)
         reason = graphene.ID(required=True)
 
@@ -31,17 +31,18 @@ class AbsencesForPersonsCreateMutation(graphene.Mutation):
         for person in persons:
             if not info.context.user.has_perm("alsijil.register_absence_rule", person):
                 raise PermissionDenied()
+            # TODO: fix timeframe
             kolego_absence, __ = Absence.objects.get_or_create(
-                date_start=start,
-                date_end=end,
+                datetime_start=start,
+                datetime_end=end,
                 reason_id=reason,
                 person=person,
                 defaults={"comment": comment},
             )
 
             events = ParticipationStatus.get_single_events(
-                datetime.combine(start, datetime.min.time()),
-                datetime.combine(end, datetime.max.time()),
+                start,
+                end,
                 None,
                 {"person": person},
                 with_reference_object=True,