@@ -86,3 +86,92 @@ export function retrieve(
8686
8787 return apiClient . retrieveQueue ( queue , $requestOptions ) ;
8888}
89+
90+ /**
91+ * Pauses a queue, preventing any new runs from being started.
92+ * Runs that are currently running will continue to completion.
93+ *
94+ * @example
95+ * ```ts
96+ * // Pause using a queue id
97+ * await queues.pause("queue_12345");
98+ *
99+ * // Or pause using type and name
100+ * await queues.pause({ type: "task", name: "my-task-id"});
101+ * ```
102+ * @param queue - The ID of the queue to pause, or the type and name
103+ * @returns The updated queue state
104+ */
105+ export function pause (
106+ queue : RetrieveQueueParam ,
107+ requestOptions ?: ApiRequestOptions
108+ ) : ApiPromise < QueueItem > {
109+ const apiClient = apiClientManager . clientOrThrow ( ) ;
110+
111+ const $requestOptions = mergeRequestOptions (
112+ {
113+ tracer,
114+ name : "queues.pause()" ,
115+ icon : "queue" ,
116+ attributes : {
117+ ...flattenAttributes ( { queue } ) ,
118+ ...accessoryAttributes ( {
119+ items : [
120+ {
121+ text : typeof queue === "string" ? queue : queue . name ,
122+ variant : "normal" ,
123+ } ,
124+ ] ,
125+ style : "codepath" ,
126+ } ) ,
127+ } ,
128+ } ,
129+ requestOptions
130+ ) ;
131+
132+ return apiClient . pauseQueue ( queue , "pause" , $requestOptions ) ;
133+ }
134+
135+ /**
136+ * Resumes a paused queue, allowing new runs to be started.
137+ *
138+ * @example
139+ * ```ts
140+ * // Resume using a queue id
141+ * await queues.resume("queue_12345");
142+ *
143+ * // Or resume using type and name
144+ * await queues.resume({ type: "task", name: "my-task-id"});
145+ * ```
146+ * @param queue - The ID of the queue to resume, or the type and name
147+ * @returns The updated queue state
148+ */
149+ export function resume (
150+ queue : RetrieveQueueParam ,
151+ requestOptions ?: ApiRequestOptions
152+ ) : ApiPromise < QueueItem > {
153+ const apiClient = apiClientManager . clientOrThrow ( ) ;
154+
155+ const $requestOptions = mergeRequestOptions (
156+ {
157+ tracer,
158+ name : "queues.resume()" ,
159+ icon : "queue" ,
160+ attributes : {
161+ ...flattenAttributes ( { queue } ) ,
162+ ...accessoryAttributes ( {
163+ items : [
164+ {
165+ text : typeof queue === "string" ? queue : queue . name ,
166+ variant : "normal" ,
167+ } ,
168+ ] ,
169+ style : "codepath" ,
170+ } ) ,
171+ } ,
172+ } ,
173+ requestOptions
174+ ) ;
175+
176+ return apiClient . pauseQueue ( queue , "resume" , $requestOptions ) ;
177+ }
0 commit comments