@@ -153,6 +153,7 @@ def create_task(
153153 tags : dict [str , str ] = None ,
154154 queue : str = None ,
155155 task_id : str = None ,
156+ external_id : str = None ,
156157) -> "Task" :
157158 """Create a Task.
158159
@@ -170,6 +171,7 @@ def create_task(
170171 queue: Name of the queue the task is from.
171172 task_id: ID to assign to the task. May be a UUID or shortened UUID; it must be
172173 unique and is immutable. If omitted, an ID is generated by the server.
174+ external_id: Identifier from the originating system (e.g. Celery task ID) for correlating with logs.
173175
174176 Returns:
175177 Task: The created Task object.
@@ -182,6 +184,8 @@ def create_task(
182184 task_dict ["id" ] = task_id
183185 if queue is not None :
184186 task_dict ["queue" ] = queue
187+ if external_id is not None :
188+ task_dict ["external_id" ] = external_id
185189 if value is not None :
186190 task_dict ["value" ] = value
187191 if value_max is not None :
@@ -227,6 +231,7 @@ def update_task(
227231 actions : list [Action ] = None ,
228232 tags : dict [str , str ] = None ,
229233 queue : str = None ,
234+ external_id : str = None ,
230235) -> "Task" :
231236 """Update a task.
232237 Requires only the task ID and fields to update.
@@ -243,6 +248,7 @@ def update_task(
243248 actions: Task actions. **Deprecated:** use project-level actions instead.
244249 tags: Dictionary of namespace -> value tags.
245250 queue: Name of the queue the task is from.
251+ external_id: Identifier from the originating system (e.g. Celery task ID) for correlating with logs.
246252
247253 Returns:
248254 Task: The updated Task object.
@@ -255,6 +261,7 @@ def update_task(
255261 max_runtime = _none_to_unset (max_runtime )
256262 stale_timeout = _none_to_unset (stale_timeout )
257263 queue = _none_to_unset (queue )
264+ external_id = _none_to_unset (external_id )
258265
259266 data = data or UNSET
260267 body = PatchedTaskRequest (
@@ -266,6 +273,7 @@ def update_task(
266273 max_runtime = max_runtime ,
267274 stale_timeout = stale_timeout ,
268275 queue = queue ,
276+ external_id = external_id ,
269277 )
270278 if actions :
271279 _warn_actions_deprecated ()
@@ -341,6 +349,7 @@ def create(
341349 tags : dict [str , str ] = None ,
342350 queue : str = None ,
343351 task_id : str = None ,
352+ external_id : str = None ,
344353 ) -> "Task" :
345354 """Create a new task
346355
@@ -359,6 +368,7 @@ def create(
359368 tags = tags ,
360369 queue = queue ,
361370 task_id = task_id ,
371+ external_id = external_id ,
362372 )
363373
364374 def __init__ (self , task ):
@@ -444,6 +454,7 @@ def update(
444454 actions : list [Action ] = None ,
445455 tags : dict [str , str ] = None ,
446456 queue : str = None ,
457+ external_id : str = None ,
447458 data_merge_strategy : Any = None ,
448459 ):
449460 """Generic update method used to update any of the task fields.
@@ -472,6 +483,7 @@ def update(
472483 actions = actions ,
473484 tags = tags ,
474485 queue = queue ,
486+ external_id = external_id ,
475487 )
476488 self ._task = task ._task
477489
0 commit comments