diff --git a/frontend/src/routes/sponsor/register/stepRegistration.tsx b/frontend/src/routes/sponsor/register/stepRegistration.tsx
index a93b29c9d16d52c50aa965f9de4edbcd4a8769a3..8e4bd716e21d118d6f5c2dfdafad4f01ffe38319 100644
--- a/frontend/src/routes/sponsor/register/stepRegistration.tsx
+++ b/frontend/src/routes/sponsor/register/stepRegistration.tsx
@@ -71,7 +71,7 @@ export default function StepRegistration() {
             ? null
             : format(formData.role_end as Date, 'yyyy-MM-dd'),
         comments: formData.comment,
-        orgunit_id: formData.ou_id,
+        orgunit: formData.ou_id,
       },
     }
 
diff --git a/greg/api/serializers/person.py b/greg/api/serializers/person.py
index 93958a212eb20b22d59cab74bd0db91b384bc5e0..16d362f73b8813d14638fbcb3ca0addce87e8bd4 100644
--- a/greg/api/serializers/person.py
+++ b/greg/api/serializers/person.py
@@ -15,8 +15,8 @@ class RoleSerializer(serializers.ModelSerializer):
             "id",
             "start_date",
             "end_date",
-            "sponsor_id",
-            "orgunit_id",
+            "sponsor",
+            "orgunit",
             "created",
             "updated",
             "type",
diff --git a/greg/migrations/0011_role_remove_id_suffix.py b/greg/migrations/0011_role_remove_id_suffix.py
new file mode 100644
index 0000000000000000000000000000000000000000..8af30b8ccef16ec30d0fc3330f96042140e57663
--- /dev/null
+++ b/greg/migrations/0011_role_remove_id_suffix.py
@@ -0,0 +1,23 @@
+# Generated by Django 3.2.8 on 2021-10-26 14:43
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('greg', '0010_roletype_max_days'),
+    ]
+
+    operations = [
+        migrations.RenameField(
+            model_name='role',
+            old_name='orgunit_id',
+            new_name='orgunit',
+        ),
+        migrations.RenameField(
+            model_name='role',
+            old_name='sponsor_id',
+            new_name='sponsor',
+        ),
+    ]
diff --git a/greg/models.py b/greg/models.py
index f0c4876fe57409693afd5e189ad75f37d9cd8d57..a57558b7d2c8f1e436aeaaba6b0418ffe6f287f2 100644
--- a/greg/models.py
+++ b/greg/models.py
@@ -203,7 +203,7 @@ class Role(BaseModel):
     type = models.ForeignKey(
         "RoleType", on_delete=models.PROTECT, related_name="persons"
     )
-    orgunit_id = models.ForeignKey(
+    orgunit = models.ForeignKey(
         "OrganizationalUnit", on_delete=models.PROTECT, related_name="unit_person_role"
     )
     # The start date can be null for people that are already
@@ -213,7 +213,7 @@ class Role(BaseModel):
     contact_person_unit = models.TextField(blank=True)
     comments = models.TextField(blank=True)
     available_in_search = models.BooleanField(default=False)
-    sponsor_id = models.ForeignKey(
+    sponsor = models.ForeignKey(
         "Sponsor", on_delete=models.PROTECT, related_name="sponsor_role"
     )
 
diff --git a/greg/tests/api/test_person.py b/greg/tests/api/test_person.py
index 9a09193c4f98c5ac9135afd24bf4bf641273ae10..791bd9372de61a6f170d4fe41335576b62b93189 100644
--- a/greg/tests/api/test_person.py
+++ b/greg/tests/api/test_person.py
@@ -55,8 +55,8 @@ def role_data_guest(
         "type": "Test Guest",
         "start_date": "2021-06-10",
         "end_date": "2021-08-10",
-        "sponsor_id": sponsor_bar.id,
-        "orgunit_id": unit_foo.id,
+        "sponsor": sponsor_bar.id,
+        "orgunit": unit_foo.id,
     }
 
 
@@ -131,8 +131,8 @@ def test_add_role(
         "type": "visiting_professor",
         "start_date": "2021-06-10",
         "end_date": "2021-08-10",
-        "sponsor_id": "1",
-        "orgunit_id": "1",
+        "sponsor": "1",
+        "orgunit": "1",
     }
     response = client.post(url, role_data)
 
@@ -425,8 +425,8 @@ def test_add_duplicate_role_fails(client, person_foo: Person, role_person_foo):
         "type": role_person_foo.type.identifier,
         "start_date": role_person_foo.start_date,
         "end_date": role_person_foo.end_date,
-        "sponsor_id": role_person_foo.sponsor_id.id,
-        "orgunit_id": role_person_foo.unit_id,
+        "sponsor": role_person_foo.sponsor.id,
+        "orgunit": role_person_foo.unit_id,
     }
     response = client.post(url, role_data)
     # If the role cannot be create the return code is 400
@@ -453,8 +453,8 @@ def test_filter_active_includes_person_with_active_role(
         person=person_foo,
         type=role_type_test_guest,
         end_date=date_today + datetime.timedelta(days=1),
-        sponsor_id=sponsor_guy,
-        orgunit_id=unit_foo,
+        sponsor=sponsor_guy,
+        orgunit=unit_foo,
     )
 
     url = reverse("v1:person-list")
@@ -491,8 +491,8 @@ def test_filter_active_value_false(
         person=person_foo,
         type=role_type_test_guest,
         end_date=date_today - datetime.timedelta(days=1),
-        sponsor_id=sponsor_guy,
-        orgunit_id=unit_foo,
+        sponsor=sponsor_guy,
+        orgunit=unit_foo,
     )
 
     url = reverse("v1:person-list")
diff --git a/greg/tests/conftest.py b/greg/tests/conftest.py
index 1998517c8c42c728e25053a4c150606aef750146..1650c63b2a715b0e0db8bc6385afa8b538cc2141 100644
--- a/greg/tests/conftest.py
+++ b/greg/tests/conftest.py
@@ -152,8 +152,8 @@ def role_person_foo(
         type=role_type_test_guest,
         start_date="2021-08-02",
         end_date="2021-08-06",
-        sponsor_id=sponsor_guy,
-        orgunit_id=unit_foo,
+        sponsor=sponsor_guy,
+        orgunit=unit_foo,
     )
     return Role.objects.get(id=role.id)
 
diff --git a/greg/tests/models/test_person.py b/greg/tests/models/test_person.py
index 396b0f0e5e3f1fe994ca70732e470cf7cda364f8..39be76df70748589eaaaf9752b2b6f84bc537ff1 100644
--- a/greg/tests/models/test_person.py
+++ b/greg/tests/models/test_person.py
@@ -98,14 +98,14 @@ def test_add_multiple_roles_to_person(
     role_with(
         person=person,
         type=role_type_foo,
-        orgunit_id=ou,
-        sponsor_id=Sponsor.objects.create(feide_id="foosponsor@uio.no"),
+        orgunit=ou,
+        sponsor=Sponsor.objects.create(feide_id="foosponsor@uio.no"),
     )
     role_with(
         person=person,
         type=role_type_bar,
-        orgunit_id=ou,
-        sponsor_id=Sponsor.objects.create(feide_id="barsponsor@uio.no"),
+        orgunit=ou,
+        sponsor=Sponsor.objects.create(feide_id="barsponsor@uio.no"),
     )
     assert person.roles.count() == 2
 
diff --git a/greg/tests/test_expire_role.py b/greg/tests/test_expire_role.py
index 77ca940cf723736b657488e7975c003d7d25e307..0eda7855840c161104dade3cf64ed9cc71542197 100644
--- a/greg/tests/test_expire_role.py
+++ b/greg/tests/test_expire_role.py
@@ -33,12 +33,12 @@ def role(
     return Role.objects.create(
         person=person,
         type=role_type_bar,
-        orgunit_id=unit_foo,
+        orgunit=unit_foo,
         start_date="2020-03-05",
         end_date=datetime.today() + timedelta(days=30),
         contact_person_unit="Contact Person",
         available_in_search=True,
-        sponsor_id=sponsor_guy,
+        sponsor=sponsor_guy,
     )
 
 
diff --git a/greg/tests/test_notifications.py b/greg/tests/test_notifications.py
index ad1475887036ff6ea785e2df5f3a5ad8598e5e42..290fb5cf0142ff4416ff6acee9d2145cd3511db8 100644
--- a/greg/tests/test_notifications.py
+++ b/greg/tests/test_notifications.py
@@ -73,8 +73,8 @@ def test_role_add_notification(
         type=role_type_foo,
         start_date="2021-05-06",
         end_date="2021-10-20",
-        orgunit_id=org_unit_bar,
-        sponsor_id=sponsor,
+        orgunit=org_unit_bar,
+        sponsor=sponsor,
     )
     notifications = Notification.objects.filter(object_type="Role")
     assert len(notifications) == 1
@@ -97,8 +97,8 @@ def test_role_update_notification(
         type=role_type_foo,
         start_date="2021-05-06",
         end_date="2021-10-20",
-        orgunit_id=org_unit_bar,
-        sponsor_id=sponsor,
+        orgunit=org_unit_bar,
+        sponsor=sponsor,
     )
     assert len(person.roles.all()) == 1
     person_role = person.roles.all()[0]
@@ -125,8 +125,8 @@ def test_role_delete_notification(
         type=role_type_foo,
         start_date="2021-05-06",
         end_date="2021-10-20",
-        orgunit_id=org_unit_bar,
-        sponsor_id=sponsor,
+        orgunit=org_unit_bar,
+        sponsor=sponsor,
     )
     assert len(person.roles.all()) == 1
     person_role = person.roles.all()[0]
diff --git a/gregui/api/serializers/invitation.py b/gregui/api/serializers/invitation.py
index b1dcda9e88b24dee3cc8f1930fdc4c3a9f5d4c49..c526a986d6dbc26903637f115db046659ae1fac9 100644
--- a/gregui/api/serializers/invitation.py
+++ b/gregui/api/serializers/invitation.py
@@ -30,7 +30,7 @@ class InviteGuestSerializer(serializers.ModelSerializer):
                 source="greg",
             )
             role_data["person"] = person
-            role_data["sponsor_id"] = user.sponsor
+            role_data["sponsor"] = user.sponsor
             role = Role.objects.create(**role_data)
             invitation = Invitation.objects.create(role=role)
             InvitationLink.objects.create(
diff --git a/gregui/api/serializers/role.py b/gregui/api/serializers/role.py
index 26f3db97864d23fdbc4465e23b1d24a4289f5b5a..f9791220ed2f7ebc008e776e710e27afa647ca52 100644
--- a/gregui/api/serializers/role.py
+++ b/gregui/api/serializers/role.py
@@ -43,7 +43,7 @@ class RoleSerializerUi(serializers.ModelSerializer):
     class Meta:
         model = Role
         fields = [
-            "orgunit_id",
+            "orgunit",
             "start_date",
             "type",
             "end_date",
diff --git a/gregui/api/views/invitation.py b/gregui/api/views/invitation.py
index 98a0bd8e1839fa49675a4d3598b37b3d8b680a71..5ffca10acd3f5643e16a82654153a29fa12fea66 100644
--- a/gregui/api/views/invitation.py
+++ b/gregui/api/views/invitation.py
@@ -30,7 +30,7 @@ class CreateInvitationView(CreateAPIView):
         "last_name": "sss",
         "date_of_birth": null,
         "role": {
-            "orgunit_id": 1,
+            "orgunit": 1,
             "start_date": null,
             "type": 1,
             "end_date": "2021-12-15",
@@ -58,16 +58,15 @@ class CreateInvitationView(CreateAPIView):
         """
         sponsor_user = GregUserProfile.objects.get(user=request.user)
         serializer = self.serializer_class(
-            data=request.data, context={"request": request}
+            data=request.data,
+            context={"request": request, "sponsor": sponsor_user.sponsor},
         )
         serializer.is_valid(raise_exception=True)
-
-        # TODO: check that sponsor has access to OU
         person = serializer.save()
 
         invitationlink = InvitationLink.objects.filter(
-            invitation__role__person=person.id,
-            invitation__role__sponsor_id=sponsor_user.sponsor,
+            invitation__role__person_id=person.id,
+            invitation__role__sponsor_id=sponsor_user.sponsor_id,
         )
         # TODO: send email to invited guest
         print(invitationlink)
@@ -133,7 +132,7 @@ class InvitedGuestView(GenericAPIView):
         invite_link = InvitationLink.objects.get(uuid=invite_id)
         role = invite_link.invitation.role
         person = role.person
-        sponsor = role.sponsor_id
+        sponsor = role.sponsor
 
         # If the user is not logged in then tell the client to take him through the manual registration process
         session_type = (
@@ -165,8 +164,8 @@ class InvitedGuestView(GenericAPIView):
                 "last_name": sponsor.last_name,
             },
             "role": {
-                "ou_name_nb": role.orgunit_id.name_nb,
-                "ou_name_en": role.orgunit_id.name_en,
+                "ou_name_nb": role.orgunit.name_nb,
+                "ou_name_en": role.orgunit.name_en,
                 "role_name_nb": role.type.name_nb,
                 "role_name_en": role.type.name_en,
                 "start": role.start_date,
diff --git a/gregui/api/views/person.py b/gregui/api/views/person.py
index edf0239f1ba71026ae331db29b29a04b5e6c9e10..79326f42d1ffc0f57e33113d3858fd9df41cc187 100644
--- a/gregui/api/views/person.py
+++ b/gregui/api/views/person.py
@@ -34,8 +34,8 @@ class PersonView(APIView):
                     "id": role.id,
                     "name_nb": role.type.name_nb,
                     "name_en": role.type.name_en,
-                    "ou_nb": role.orgunit_id.name_nb,
-                    "ou_en": role.orgunit_id.name_en,
+                    "ou_nb": role.orgunit.name_nb,
+                    "ou_en": role.orgunit.name_en,
                     "start_date": role.start_date,
                     "end_date": role.end_date,
                     "max_days": role.type.max_days,
diff --git a/gregui/api/views/userinfo.py b/gregui/api/views/userinfo.py
index 3a4a0d4133499c4301042d43929cfa977de8bd87..980cbd31454413298678b420e06bfa3d17b0f490 100644
--- a/gregui/api/views/userinfo.py
+++ b/gregui/api/views/userinfo.py
@@ -68,16 +68,16 @@ class UserInfoView(APIView):
                         {
                             "roles": [
                                 {
-                                    "ou_name_nb": role.orgunit_id.name_nb,
-                                    "ou_name_en": role.orgunit_id.name_en,
+                                    "ou_name_nb": role.orgunit.name_nb,
+                                    "ou_name_en": role.orgunit.name_en,
                                     "role_name_nb": role.type.name_nb,
                                     "role_name_en": role.type.name_en,
                                     "start": role.start_date,
                                     "end": role.end_date,
                                     "comments": role.comments,
                                     "sponsor": {
-                                        "first_name": role.sponsor_id.first_name,
-                                        "last_name": role.sponsor_id.last_name,
+                                        "first_name": role.sponsor.first_name,
+                                        "last_name": role.sponsor.last_name,
                                     },
                                 }
                                 for role in roles.all()
@@ -105,16 +105,16 @@ class UserInfoView(APIView):
                 "passport": passports and passports.value,
                 "roles": [
                     {
-                        "ou_name_nb": role.orgunit_id.name_nb,
-                        "ou_name_en": role.orgunit_id.name_en,
+                        "ou_name_nb": role.orgunit.name_nb,
+                        "ou_name_en": role.orgunit.name_en,
                         "role_name_nb": role.type.name_nb,
                         "role_name_en": role.type.name_en,
                         "start": role.start_date,
                         "end": role.end_date,
                         "comments": role.comments,
                         "sponsor": {
-                            "first_name": role.sponsor_id.first_name,
-                            "last_name": role.sponsor_id.last_name,
+                            "first_name": role.sponsor.first_name,
+                            "last_name": role.sponsor.last_name,
                         },
                     }
                     for role in person.roles.all()
diff --git a/gregui/tests/api/test_invite_guest.py b/gregui/tests/api/test_invite_guest.py
index 55a962e330cf5bd92fbbf94f511da9f41ecfec73..46f8b10821d499a69c1ea781a47de18e166b1310 100644
--- a/gregui/tests/api/test_invite_guest.py
+++ b/gregui/tests/api/test_invite_guest.py
@@ -16,7 +16,7 @@ def test_invite_guest(client, user_sponsor, unit_foo, role_type_foo):
         "role": {
             "start_date": "2019-08-06",
             "end_date": "2019-08-10",
-            "orgunit_id": unit_foo.id,
+            "orgunit": unit_foo.id,
             "type": role_type_foo.id,
         },
     }
diff --git a/gregui/tests/conftest.py b/gregui/tests/conftest.py
index f4cd467c2d60ed3447e0dcf2e15f2cb57276e8d2..1bd22154f3a68dc909a2eebb94a8a65aee17f9bc 100644
--- a/gregui/tests/conftest.py
+++ b/gregui/tests/conftest.py
@@ -190,8 +190,8 @@ def person(person_foo_data) -> Person:
 def role(person, sponsor_guy, unit_foo, role_type_foo) -> Role:
     role = Role.objects.create(
         person=person,
-        sponsor_id=sponsor_guy,
-        orgunit_id=unit_foo,
+        sponsor=sponsor_guy,
+        orgunit=unit_foo,
         end_date="2050-10-15",
         type_id=role_type_foo.id,
     )
diff --git a/gregui/views.py b/gregui/views.py
index 15e6e264ce87afe18682107efe00ee6980cb6daa..4721cccb27e0426fa2874796671bb62d1b55dbaa 100644
--- a/gregui/views.py
+++ b/gregui/views.py
@@ -113,8 +113,8 @@ class GuestInfoView(APIView):
                                 "id": role.id,
                                 "name_nb": role.type.name_nb,
                                 "name_en": role.type.name_en,
-                                "ou_nb": role.orgunit_id.name_nb,
-                                "ou_en": role.orgunit_id.name_en,
+                                "ou_nb": role.orgunit.name_nb,
+                                "ou_en": role.orgunit.name_en,
                                 "start_date": role.start_date,
                                 "end_date": role.end_date,
                                 "max_days": role.type.max_days,
@@ -123,7 +123,7 @@ class GuestInfoView(APIView):
                         ],
                     }
                     for person in Person.objects.filter(
-                        roles__sponsor_id=user.sponsor
+                        roles__sponsor=user.sponsor
                     ).distinct()
                 ]
             }