diff --git a/pluto-interface/src/main/protobuf/callcontext.proto b/pluto-interface/src/main/protobuf/callcontext.proto
new file mode 100644
index 0000000000000000000000000000000000000000..690fe03e0f1f9cd181cc4a25ba94af7eb557bea6
--- /dev/null
+++ b/pluto-interface/src/main/protobuf/callcontext.proto
@@ -0,0 +1,18 @@
+syntax = "proto3";
+
+package de.itvsh.ozg.pluto.command;
+
+option java_multiple_files = true;
+option java_package = "de.itvsh.ozg.pluto.command";
+option java_outer_classname = "SharedCommandProto";
+
+message CallContext {
+	string client = 1;
+	User user = 2; 
+}
+
+message User {
+	string id = 1;
+	string name = 2;
+	repeated string roles = 3;
+}
\ No newline at end of file
diff --git a/pluto-interface/src/main/protobuf/vorgangcommand.proto b/pluto-interface/src/main/protobuf/vorgangcommand.proto
new file mode 100644
index 0000000000000000000000000000000000000000..d4dc95b286bc405953a88bea5c62bd603b27498d
--- /dev/null
+++ b/pluto-interface/src/main/protobuf/vorgangcommand.proto
@@ -0,0 +1,55 @@
+syntax = "proto3";
+
+package de.itvsh.ozg.pluto.vorgang.command;
+
+import "callcontext.proto";
+
+option java_multiple_files = true;
+option java_package = "de.itvsh.ozg.pluto.vorgang.command";
+option java_outer_classname = "VorgangCommandProto";
+
+service CommandService {
+
+	rpc CreateVorgangCommand(CreateVorgangCommandRequest) returns (CommandResponse) {
+	}
+	
+	rpc RevokeVorgangCommand(RevokeVorgangCommandRequest) returns (CommandResponse) {
+	}
+}
+
+enum Order {
+	ANNEHMEN = 0;
+}
+
+message CreateVorgangCommandRequest {
+	de.itvsh.ozg.pluto.command.CallContext context = 1;
+	string vorgangId = 2;
+	string order = 3;
+	string documentVersion = 4;
+}
+
+message CommandResponse {
+	enum ResponseCode {
+		OK = 0;
+		PENDING = 1;
+		ERROR = 2;
+		CONFLICT = 3;
+	}
+	ResponseCode responseCode = 1;
+	string messageCode = 2;
+	string messageParameters = 3;
+	string commandId = 4;
+	string documentVersion = 5;
+}
+
+message MessageParameter {
+	string name = 1;
+	string value = 2;
+}
+
+message RevokeVorgangCommandRequest {
+	de.itvsh.ozg.pluto.command.CallContext context = 1;
+	string commandId = 2;
+	string documentVersion = 3;
+}
+