diff --git a/src/UwPermissions/UwPermissions.php b/src/UwPermissions/UwPermissions.php
index bc083a585a5cbffde4caf20b37d50bb628ccda6c..40237b8098e433eebb6c810fd3675848149b6860 100644
--- a/src/UwPermissions/UwPermissions.php
+++ b/src/UwPermissions/UwPermissions.php
@@ -199,6 +199,24 @@ class UwPermissions {
         ),
       ],
 
+      // Service permissions.
+      'Service' => [
+        'Use content type' =>
+        UwPermissions::buildRolePermissionsListContentType(
+        'uw_ct_service'
+        ),
+        'Create/edit categories' =>
+        UwPermissions::buildRolePermissionsListTaxonomyTerm(
+        'uw_vocab_service_categories',
+          ['create', 'edit']
+        ),
+        'Delete categories' =>
+        UwPermissions::buildRolePermissionsListTaxonomyTerm(
+        'uw_vocab_service_categories',
+          ['delete']
+        ),
+      ],
+
       // Sidebar permissions.
       'Sidebar' => [
         'Use content type' =>
diff --git a/src/UwRoles/user.role.uw_role_content_author.yml b/src/UwRoles/user.role.uw_role_content_author.yml
index f1583804b9eed0c3b832e8ac009b356505c210d7..c1009b4bc235ab97666e822a0054f8ae001ffb4f 100644
--- a/src/UwRoles/user.role.uw_role_content_author.yml
+++ b/src/UwRoles/user.role.uw_role_content_author.yml
@@ -49,6 +49,7 @@ permissions:
   - 'clone uw_ct_event content'
   - 'clone uw_ct_news_item content'
   - 'clone uw_ct_profile content'
+  - 'clone uw_ct_service content'
   - 'clone uw_ct_sidebar content'
   - 'clone uw_ct_web_page content'
   - 'configure editable uw_ct_blog node layout overrides'
@@ -57,6 +58,7 @@ permissions:
   - 'configure editable uw_ct_event node layout overrides'
   - 'configure editable uw_ct_news_item node layout overrides'
   - 'configure editable uw_ct_profile node layout overrides'
+  - 'configure editable uw_ct_service node layout overrides'
   - 'configure editable uw_ct_sidebar node layout overrides'
   - 'configure editable uw_ct_site_footer node layout overrides'
   - 'configure editable uw_ct_web_page node layout overrides'
@@ -93,6 +95,7 @@ permissions:
   - 'enter uw_ct_event revision log entry'
   - 'enter uw_ct_news_item revision log entry'
   - 'enter uw_ct_profile revision log entry'
+  - 'enter uw_ct_service revision log entry'
   - 'enter uw_ct_web_page revision log entry'
   - 'make smart dates recur'
   - 'override uw_ct_blog promote to front page option'
@@ -113,6 +116,8 @@ permissions:
   - 'override uw_ct_news_item sticky option'
   - 'override uw_ct_profile published option'
   - 'override uw_ct_profile revision option'
+  - 'override uw_ct_service published option'
+  - 'override uw_ct_service revision option'
   - 'override uw_ct_web_page published option'
   - 'override uw_ct_web_page revision option'
   - 'reschedule smart date recur instances'
diff --git a/src/UwRoles/user.role.uw_role_content_editor.yml b/src/UwRoles/user.role.uw_role_content_editor.yml
index 7534a0a9b273f68a797046ca4ed28f0926216763..4226291f5a643e3a733bf8623f066aaf5f3cffc6 100644
--- a/src/UwRoles/user.role.uw_role_content_editor.yml
+++ b/src/UwRoles/user.role.uw_role_content_editor.yml
@@ -50,6 +50,7 @@ permissions:
   - 'clone uw_ct_event content'
   - 'clone uw_ct_news_item content'
   - 'clone uw_ct_profile content'
+  - 'clone uw_ct_service content'
   - 'clone uw_ct_sidebar content'
   - 'clone uw_ct_web_page content'
   - 'configure editable uw_ct_blog node layout overrides'
@@ -58,6 +59,7 @@ permissions:
   - 'configure editable uw_ct_event node layout overrides'
   - 'configure editable uw_ct_news_item node layout overrides'
   - 'configure editable uw_ct_profile node layout overrides'
+  - 'configure editable uw_ct_service node layout overrides'
   - 'configure editable uw_ct_sidebar node layout overrides'
   - 'configure editable uw_ct_site_footer node layout overrides'
   - 'configure editable uw_ct_web_page node layout overrides'
@@ -82,6 +84,7 @@ permissions:
   - 'enter uw_ct_event revision log entry'
   - 'enter uw_ct_news_item revision log entry'
   - 'enter uw_ct_profile revision log entry'
+  - 'enter uw_ct_service revision log entry'
   - 'enter uw_ct_web_page revision log entry'
   - 'make smart dates recur'
   - 'override uw_ct_blog promote to front page option'
@@ -102,6 +105,8 @@ permissions:
   - 'override uw_ct_news_item sticky option'
   - 'override uw_ct_profile published option'
   - 'override uw_ct_profile revision option'
+  - 'override uw_ct_service published option'
+  - 'override uw_ct_service revision option'
   - 'override uw_ct_web_page published option'
   - 'override uw_ct_web_page revision option'
   - 'reschedule smart date recur instances'
diff --git a/src/UwRoles/user.role.uw_role_site_manager.yml b/src/UwRoles/user.role.uw_role_site_manager.yml
index fa21dbc81248c6bbafad39a968c254173f7f49db..b0e18b099f3428e8366338cf4462f79f44c86d0f 100644
--- a/src/UwRoles/user.role.uw_role_site_manager.yml
+++ b/src/UwRoles/user.role.uw_role_site_manager.yml
@@ -54,6 +54,7 @@ permissions:
   - 'clone uw_ct_event content'
   - 'clone uw_ct_news_item content'
   - 'clone uw_ct_profile content'
+  - 'clone uw_ct_service content'
   - 'clone uw_ct_sidebar content'
   - 'clone uw_ct_web_page content'
   - 'configure editable uw_ct_blog node layout overrides'
@@ -62,6 +63,7 @@ permissions:
   - 'configure editable uw_ct_event node layout overrides'
   - 'configure editable uw_ct_news_item node layout overrides'
   - 'configure editable uw_ct_profile node layout overrides'
+  - 'configure editable uw_ct_service node layout overrides'
   - 'configure editable uw_ct_sidebar node layout overrides'
   - 'configure editable uw_ct_site_footer node layout overrides'
   - 'configure editable uw_ct_web_page node layout overrides'
@@ -100,6 +102,7 @@ permissions:
   - 'enter uw_ct_event revision log entry'
   - 'enter uw_ct_news_item revision log entry'
   - 'enter uw_ct_profile revision log entry'
+  - 'enter uw_ct_service revision log entry'
   - 'enter uw_ct_web_page revision log entry'
   - 'make smart dates recur'
   - 'override uw_ct_blog promote to front page option'
@@ -120,6 +123,8 @@ permissions:
   - 'override uw_ct_news_item sticky option'
   - 'override uw_ct_profile published option'
   - 'override uw_ct_profile revision option'
+  - 'override uw_ct_service published option'
+  - 'override uw_ct_service revision option'
   - 'override uw_ct_web_page published option'
   - 'override uw_ct_web_page revision option'
   - 'rearrange contacts'
diff --git a/uw_cfg_common.install b/uw_cfg_common.install
index b395945d6754bc8bde5ca8c6f82dc1ad60042860..dc67811b4370a58835939a2289fc91f02a0628da 100644
--- a/uw_cfg_common.install
+++ b/uw_cfg_common.install
@@ -169,6 +169,21 @@ function uw_cfg_common_install() {
         'Site manager',
       ],
     ],
+    'Service' => [
+      'Use content type' => [
+        'Site manager',
+        'Content author',
+        'Content editor',
+      ],
+      'Create/edit categories' => [
+        'Site manager',
+        'Content author',
+        'Content editor',
+      ],
+      'Delete categories' => [
+        'Site manager',
+      ],
+    ],
     'Sidebar' => [
       'Use content type' => [
         'Site manager',