diff --git a/greg/api/serializers/consent_type.py b/greg/api/serializers/consent_type.py
index fefe1f19caca36bb086422bd2c2cb77371d05781..4bca896c1db443bcda2beb1cf401cff10e2a7de8 100644
--- a/greg/api/serializers/consent_type.py
+++ b/greg/api/serializers/consent_type.py
@@ -27,7 +27,10 @@ class ConsentTypeSerializer(ModelSerializer):
             "user_allowed_to_change",
             "valid_from",
             "choices",
+            "created",
+            "updated",
         )
+        read_only_fields = ["created", "updated"]
 
 
 class ConsentTypeSerializerBrief(ModelSerializer):
diff --git a/greg/api/serializers/organizational_unit.py b/greg/api/serializers/organizational_unit.py
index 3c4acd7cd32f409376a9faa54ae012e03c48242a..fe71c5fbc668b8612f9a87b8b6ec828c87b17e85 100644
--- a/greg/api/serializers/organizational_unit.py
+++ b/greg/api/serializers/organizational_unit.py
@@ -33,5 +33,7 @@ class SponsorOrgUnitsSerializer(ModelSerializer):
             "hierarchical_access",
             "automatic",
             "source",
+            "created",
+            "updated",
         ]
-        read_only_fields = ["sponsor", "organizational_unit"]
+        read_only_fields = ["sponsor", "organizational_unit", "created", "updated"]
diff --git a/greg/api/serializers/person.py b/greg/api/serializers/person.py
index f5e946e98ead864cd98945d0f3e021ef2decbfa2..a96fb6c56b264151b2c1a27b65d01167606b5605 100644
--- a/greg/api/serializers/person.py
+++ b/greg/api/serializers/person.py
@@ -24,8 +24,12 @@ class PersonSerializer(serializers.ModelSerializer):
             "roles",
             "consents",
             "meta",
+            "created",
+            "updated",
         ]
 
+        read_only_fields = ["created", "updated"]
+
 
 class PersonSearchSerializer(serializers.ModelSerializer):
     person_id = serializers.CharField(source="id")
diff --git a/greg/api/serializers/sponsor.py b/greg/api/serializers/sponsor.py
index 240635d362f880254f22c0cb7adbb646222fa637..bbb0c4ab265f1db0549f1854af70885c886ac1c9 100644
--- a/greg/api/serializers/sponsor.py
+++ b/greg/api/serializers/sponsor.py
@@ -9,4 +9,14 @@ class SponsorSerializer(serializers.ModelSerializer):
 
     class Meta:
         model = Sponsor
-        fields = ["id", "feide_id", "first_name", "last_name", "work_email", "orgunits"]
+        fields = [
+            "id",
+            "feide_id",
+            "first_name",
+            "last_name",
+            "work_email",
+            "orgunits",
+            "created",
+            "updated",
+        ]
+        read_only_fields = ["created", "updated"]
diff --git a/greg/tests/api/test_consent_type.py b/greg/tests/api/test_consent_type.py
index 7851f858c95a295d9aa1d035071746fc9472351f..2b6fdf97d99d5a517690480d6e034ad6b791a711 100644
--- a/greg/tests/api/test_consent_type.py
+++ b/greg/tests/api/test_consent_type.py
@@ -38,4 +38,6 @@ def test_get_consent_type(client, consent_type_foo: ConsentType):
                 "text_nn": "Nei",
             },
         ],
+        "created": consent_type_foo.created.strftime("%Y-%m-%dT%H:%M:%S.%fZ"),
+        "updated": consent_type_foo.updated.strftime("%Y-%m-%dT%H:%M:%S.%fZ"),
     }
diff --git a/greg/tests/api/test_person.py b/greg/tests/api/test_person.py
index fb58e12afcbc84f9a943d2099b8335b99c97b02a..73ce0d0f1cc1d29616c4339a0f4cd23074e38988 100644
--- a/greg/tests/api/test_person.py
+++ b/greg/tests/api/test_person.py
@@ -122,18 +122,10 @@ def test_person_create(client):
     url = reverse("v1:person-list")
     response = client.post(url, {"first_name": "foo木👍أ", "last_name": "غbar水"})
     results = response.json()
-    assert results == {
-        "id": 1,
-        "first_name": "foo木👍أ",
-        "last_name": "غbar水",
-        "gender": None,
-        "date_of_birth": None,
-        "registration_completed_date": None,
-        "identities": [],
-        "roles": [],
-        "consents": [],
-        "meta": None,
-    }
+    assert results.get("first_name") == "foo木👍أ"
+    assert results.get("last_name") == "غbar水"
+    assert results.get("created") is not None
+    assert results.get("updated") is not None
 
 
 @pytest.mark.django_db
diff --git a/gregui/tests/api/views/test_consent.py b/gregui/tests/api/views/test_consent.py
index 6da9cee54f5a579c33496231234ef09b3bc45594..4586f304eb3316acc7a93621223775620dc2ef17 100644
--- a/gregui/tests/api/views/test_consent.py
+++ b/gregui/tests/api/views/test_consent.py
@@ -25,6 +25,8 @@ def test_get_consents(client, consent_type_foo, consent_type_bar):
             "name_nn": "F",
             "user_allowed_to_change": True,
             "valid_from": "2018-01-20",
+            "created": consent_type_foo.created.strftime("%Y-%m-%dT%H:%M:%S.%fZ"),
+            "updated": consent_type_foo.updated.strftime("%Y-%m-%dT%H:%M:%S.%fZ"),
         },
         {
             "choices": [
@@ -41,5 +43,7 @@ def test_get_consents(client, consent_type_foo, consent_type_bar):
             "name_nn": "B",
             "user_allowed_to_change": True,
             "valid_from": "2018-01-20",
+            "created": consent_type_bar.created.strftime("%Y-%m-%dT%H:%M:%S.%fZ"),
+            "updated": consent_type_bar.updated.strftime("%Y-%m-%dT%H:%M:%S.%fZ"),
         },
     ]