diff --git a/alfa-server/src/main/resources/application-dev.yml b/alfa-server/src/main/resources/application-dev.yml
index 52ca56a22d8fa5ded4dcecfae01b3e22553c2da1..6f11904235f17602539afaca47cd695e69deee8b 100644
--- a/alfa-server/src/main/resources/application-dev.yml
+++ b/alfa-server/src/main/resources/application-dev.yml
@@ -10,6 +10,7 @@ server:
 ozgcloud:
   feature:
     reply-always-allowed: true
+    collaboration-enabled: true
   production: false
   stage:
     production: false
diff --git a/alfa-server/src/main/resources/application-local.yml b/alfa-server/src/main/resources/application-local.yml
index b113a7052d27746ebf67fdd3600b381e7e658dd5..74743fd293aab8aeda88d286548ff33e73ea55d7 100644
--- a/alfa-server/src/main/resources/application-local.yml
+++ b/alfa-server/src/main/resources/application-local.yml
@@ -18,6 +18,7 @@ grpc:
 ozgcloud:
   feature:
     reply-always-allowed: true
+    collaboration-enabled: true
   production: false
   user-assistance:
     documentation:
diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessor.java b/alfa-service/src/main/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessor.java
new file mode 100644
index 0000000000000000000000000000000000000000..eff36471291c00d19a84e8177f9bd4d3b21877f3
--- /dev/null
+++ b/alfa-service/src/main/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessor.java
@@ -0,0 +1,36 @@
+package de.ozgcloud.alfa.collaboration;
+
+import static org.springframework.hateoas.server.mvc.WebMvcLinkBuilder.*;
+
+import java.util.Objects;
+
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.hateoas.EntityModel;
+import org.springframework.hateoas.LinkRelation;
+import org.springframework.hateoas.server.RepresentationModelProcessor;
+import org.springframework.stereotype.Component;
+
+import de.ozgcloud.alfa.common.ModelBuilder;
+import de.ozgcloud.alfa.common.command.CommandController;
+import de.ozgcloud.alfa.vorgang.VorgangWithEingang;
+
+@Component
+@ConditionalOnProperty("ozgcloud.feature.collaboration-enabled")
+class CollaborationVorgangProcessor implements RepresentationModelProcessor<EntityModel<VorgangWithEingang>> {
+
+	static final LinkRelation REL_CREATE_COLLABORATION_REQUEST = LinkRelation.of("createCollaborationRequest");
+
+	@Override
+	public EntityModel<VorgangWithEingang> process(EntityModel<VorgangWithEingang> model) {
+		var vorgang = model.getContent();
+
+		if (Objects.isNull(vorgang)) {
+			return model;
+		}
+
+		return ModelBuilder.fromModel(model)
+				.addLink(linkTo(methodOn(CommandController.CommandByRelationController.class).createCommand(vorgang.getId(), vorgang.getId(),
+						vorgang.getVersion(), null)).withRel(REL_CREATE_COLLABORATION_REQUEST))
+				.buildModel();
+	}
+}
diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/common/FeatureToggleProperties.java b/alfa-service/src/main/java/de/ozgcloud/alfa/common/FeatureToggleProperties.java
index 80238fccb22376ea6e2ff8201f1d7b497a968dae..5b60fc67206213d2be23bda2aebddfb539873da5 100644
--- a/alfa-service/src/main/java/de/ozgcloud/alfa/common/FeatureToggleProperties.java
+++ b/alfa-service/src/main/java/de/ozgcloud/alfa/common/FeatureToggleProperties.java
@@ -16,4 +16,9 @@ public class FeatureToggleProperties {
 	 * Enable mail reply option regardless of other configuration.
 	 */
 	private boolean replyAlwaysAllowed = false;
+
+	/**
+	 * Enable collaboration-feature in Vorgang
+	 */
+	private boolean collaborationEnabled = false;
 }
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessorITCase.java b/alfa-service/src/test/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessorITCase.java
new file mode 100644
index 0000000000000000000000000000000000000000..fe189548817a2ec6f40b4eb9536d0e2f8cef3cdb
--- /dev/null
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessorITCase.java
@@ -0,0 +1,32 @@
+package de.ozgcloud.alfa.collaboration;
+
+import static org.assertj.core.api.Assertions.*;
+
+import org.junit.jupiter.api.Nested;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.NoSuchBeanDefinitionException;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.context.ApplicationContext;
+
+class CollaborationVorgangProcessorITCase {
+
+	@SpringBootTest(properties = {"ozgcloud.feature.collaboration-enabled=true"})
+	@Nested
+	class OnFeatureEnabled {
+
+		@Test
+		void shouldExistInApplicationContext(ApplicationContext context) {
+			assertThat(context.getBean(CollaborationVorgangProcessor.class)).isNotNull();
+		}
+	}
+
+	@SpringBootTest
+	@Nested
+	class OnFeatureDisabled {
+
+		@Test
+		void shouldNotExistInApplicationContext(ApplicationContext context) {
+			assertThatThrownBy(() -> context.getBean(CollaborationVorgangProcessor.class)).isInstanceOf(NoSuchBeanDefinitionException.class);
+		}
+	}
+}
diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessorTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessorTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..86b1fad98a99dffd68dbdab997fb8075055ce8a4
--- /dev/null
+++ b/alfa-service/src/test/java/de/ozgcloud/alfa/collaboration/CollaborationVorgangProcessorTest.java
@@ -0,0 +1,60 @@
+package de.ozgcloud.alfa.collaboration;
+
+import static de.ozgcloud.alfa.common.UserProfileUrlProviderTestFactory.*;
+import static org.assertj.core.api.Assertions.*;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Nested;
+import org.junit.jupiter.api.Test;
+import org.mockito.Spy;
+import org.springframework.hateoas.EntityModel;
+import org.springframework.hateoas.Link;
+import org.springframework.hateoas.UriTemplate;
+
+import de.ozgcloud.alfa.common.UserProfileUrlProvider;
+import de.ozgcloud.alfa.common.command.CommandController;
+import de.ozgcloud.alfa.vorgang.VorgangHeaderTestFactory;
+import de.ozgcloud.alfa.vorgang.VorgangWithEingangTestFactory;
+
+class CollaborationVorgangProcessorTest {
+
+	@Spy
+	private CollaborationVorgangProcessor processor;
+
+	private final UserProfileUrlProvider urlProvider = new UserProfileUrlProvider();
+
+	@Nested
+	class TestProcess {
+
+		@Nested
+		class OnNullVorgang {
+
+			@Test
+			void shouldNotAddLinksIfVorgangIsNull() {
+				var model = processor.process(new EntityModel<>() {});
+
+				assertThat(model.hasLinks()).isFalse();
+			}
+		}
+
+		@Nested
+		class OnNonNullVorgang {
+
+			@BeforeEach
+			void prepareBuilder() {
+				initUserProfileUrlProvider(urlProvider);
+			}
+
+
+			@Test
+			void shouldAddCreateCollaborationRequestRelation() {
+				var model = processor.process(EntityModel.of(VorgangWithEingangTestFactory.create()));
+
+				assertThat(model.getLink(CollaborationVorgangProcessor.REL_CREATE_COLLABORATION_REQUEST)).isPresent().get()
+						.extracting(Link::getHref)
+						.isEqualTo(UriTemplate.of(CommandController.CommandByRelationController.COMMAND_BY_RELATION_PATH)
+								.expand(VorgangHeaderTestFactory.ID, VorgangHeaderTestFactory.ID, VorgangHeaderTestFactory.VERSION).toString());
+			}
+		}
+	}
+}