@@ -152,6 +152,7 @@ def create_task(
152152 monitor_id : str = None ,
153153 tags : dict [str , str ] = None ,
154154 queue : str = None ,
155+ external_id : str = None ,
155156) -> "Task" :
156157 """Create a Task.
157158
@@ -167,6 +168,7 @@ def create_task(
167168 monitor_id: ID of the monitor to associate this task with.
168169 tags: Dictionary of namespace -> value tags.
169170 queue: Name of the queue the task is from.
171+ external_id: Identifier from the originating system (e.g. Celery task ID) for correlating with logs.
170172
171173 Returns:
172174 Task: The created Task object.
@@ -177,6 +179,8 @@ def create_task(
177179 }
178180 if queue is not None :
179181 task_dict ["queue" ] = queue
182+ if external_id is not None :
183+ task_dict ["external_id" ] = external_id
180184 if value is not None :
181185 task_dict ["value" ] = value
182186 if value_max is not None :
@@ -222,6 +226,7 @@ def update_task(
222226 actions : list [Action ] = None ,
223227 tags : dict [str , str ] = None ,
224228 queue : str = None ,
229+ external_id : str = None ,
225230) -> "Task" :
226231 """Update a task.
227232 Requires only the task ID and fields to update.
@@ -238,6 +243,7 @@ def update_task(
238243 actions: Task actions. **Deprecated:** use project-level actions instead.
239244 tags: Dictionary of namespace -> value tags.
240245 queue: Name of the queue the task is from.
246+ external_id: Identifier from the originating system (e.g. Celery task ID) for correlating with logs.
241247
242248 Returns:
243249 Task: The updated Task object.
@@ -250,6 +256,7 @@ def update_task(
250256 max_runtime = _none_to_unset (max_runtime )
251257 stale_timeout = _none_to_unset (stale_timeout )
252258 queue = _none_to_unset (queue )
259+ external_id = _none_to_unset (external_id )
253260
254261 data = data or UNSET
255262 body = PatchedTaskRequest (
@@ -261,6 +268,7 @@ def update_task(
261268 max_runtime = max_runtime ,
262269 stale_timeout = stale_timeout ,
263270 queue = queue ,
271+ external_id = external_id ,
264272 )
265273 if actions :
266274 _warn_actions_deprecated ()
@@ -335,6 +343,7 @@ def create(
335343 monitor_id : str = None ,
336344 tags : dict [str , str ] = None ,
337345 queue : str = None ,
346+ external_id : str = None ,
338347 ) -> "Task" :
339348 """Create a new task
340349
@@ -352,6 +361,7 @@ def create(
352361 monitor_id = monitor_id ,
353362 tags = tags ,
354363 queue = queue ,
364+ external_id = external_id ,
355365 )
356366
357367 def __init__ (self , task ):
@@ -437,6 +447,7 @@ def update(
437447 actions : list [Action ] = None ,
438448 tags : dict [str , str ] = None ,
439449 queue : str = None ,
450+ external_id : str = None ,
440451 data_merge_strategy : Any = None ,
441452 ):
442453 """Generic update method used to update any of the task fields.
@@ -465,6 +476,7 @@ def update(
465476 actions = actions ,
466477 tags = tags ,
467478 queue = queue ,
479+ external_id = external_id ,
468480 )
469481 self ._task = task ._task
470482
0 commit comments