@@ -105,6 +105,25 @@ message GetWorkflowRequest {
105105 ];
106106}
107107
108+ // UpdateWorkflowRequest updates an existing workflow, by updating all fields that are set to their new values.
109+ // If a field is not set, it will not be updated.
110+ message UpdateWorkflowRequest {
111+ string workflow_slug = 1 [
112+ (buf.validate.field ) .string.min_len = 1 ,
113+ (buf.validate.field ) .string.max_len = 100 ,
114+ (buf.validate.field ) .string.pattern = "^[A-Za-z0-9-]*$"
115+ ];
116+ string name = 2 [
117+ features.field_presence = EXPLICIT ,
118+ (buf.validate.field ) .string.min_len = 1 ,
119+ (buf.validate.field ) .string.max_len = 100
120+ ];
121+ string description = 3 [
122+ features.field_presence = EXPLICIT ,
123+ (buf.validate.field ) .string.max_len = 50000
124+ ];
125+ }
126+
108127// DeleteWorkflowRequest deletes an existing workflow.
109128message DeleteWorkflowRequest {
110129 // The slug of the workflow to delete.
@@ -270,6 +289,7 @@ service WorkflowsService {
270289 rpc CreateWorkflow (CreateWorkflowRequest ) returns (Workflow );
271290 rpc ListWorkflows (ListWorkflowsRequest ) returns (ListWorkflowsResponse );
272291 rpc GetWorkflow (GetWorkflowRequest ) returns (Workflow );
292+ rpc UpdateWorkflow (UpdateWorkflowRequest ) returns (Workflow );
273293 rpc DeleteWorkflow (DeleteWorkflowRequest ) returns (DeleteWorkflowResponse );
274294 rpc PublishWorkflowRelease (PublishWorkflowReleaseRequest ) returns (WorkflowRelease );
275295 rpc UnpublishWorkflowRelease (UnpublishWorkflowReleaseRequest ) returns (UnpublishWorkflowReleaseResponse );
0 commit comments