invoke-ai/InvokeAI · error · HTTPException
Failed to get queue item summaries
Error message
Failed to get queue item summaries
What it means
Catch-all in get_queue_item_summaries_by_ids: any exception from fetching summaries or sanitizing them per-user becomes a 500 with the static detail 'Failed to get queue item summaries'. As with error 144 the client gets no cause information; diagnostics require server logs.
Source
Thrown at invokeai/app/api/routers/session_queue.py:259
responses={200: {"model": list[SessionQueueItemSummary]}},
)
def get_queue_item_summaries_by_ids(
current_user: CurrentUserOrDefault,
queue_id: str = Path(description="The queue id to perform this operation on"),
item_ids: list[int] = Body(
embed=True,
max_length=MAX_QUEUE_ITEM_IDS_PER_REQUEST,
description="Object containing list of queue item ids to fetch summaries for",
),
) -> list[SessionQueueItemSummary]:
"""Gets lightweight queue item summaries for specified IDs in requested order."""
try:
summaries = ApiDependencies.invoker.services.session_queue.get_queue_item_summaries_by_ids(
queue_id=queue_id, item_ids=item_ids
)
return [sanitize_queue_item_for_user(item, current_user.user_id, current_user.is_admin) for item in summaries]
except Exception:
raise HTTPException(status_code=500, detail="Failed to get queue item summaries")
@session_queue_router.put(
"/{queue_id}/processor/resume",
operation_id="resume",
responses={200: {"model": SessionProcessorStatus}},
)
def resume(
current_user: AdminUserOrDefault,
queue_id: str = Path(description="The queue id to perform this operation on"),
) -> SessionProcessorStatus:
"""Resumes session processor. Admin only."""
try:
return ApiDependencies.invoker.services.session_processor.resume()
except Exception as e:
raise HTTPException(status_code=500, detail=f"Unexpected error while resuming queue: {e}")
View on GitHub (pinned to 0b6a024f2f)
Solutions
- Look at the server-side traceback for the real exception
- Verify ids exist and belong to the given queue before batching the request
- If multiuser is on, inspect stored summaries for schema drift and repair/upgrade the DB
- Retry; treat as transient if it coincides with heavy DB activity
Defensive patterns
Strategy: try-catch
Validate before calling
const ids = await (await fetch(`/api/v1/queue/${queueId}/item_ids`)).json();
if (requestedIds.some(id => !ids.includes(id))) console.warn('some ids may have been deleted; summary fetch may fail'); Type guard
function isSummaryList(v) { return Array.isArray(v) && v.every(s => s && typeof s === 'object' && 'item_id' in s && 'status' in s); } Try / catch
try {
const res = await fetch(`/api/v1/queue/${queueId}/item_summaries_by_ids`, {method:'POST', headers:{'Content-Type':'application/json'}, body: JSON.stringify({item_ids: requestedIds})});
if (!res.ok) return [];
return await res.json();
} catch { return []; } Prevention
- Verify ids exist in the target queue before requesting summaries
- Prefer the summaries endpoint over full items to reduce failure surface
- In multiuser mode ensure the DB schema matches the running version
- Retry on transient failures during heavy queue activity
When it happens
Trigger: POST /{queue_id}/item_summaries_by_ids when the queue service throws - unknown queue_id, DB failure, or sanitize_queue_item_for_user failing on a stored summary with unexpected shape.
Common situations: Requesting summaries for ids deleted moments earlier; mixed-version clients sending ids from a prior schema; multiuser mode where sanitizer input is malformed.
Related errors
- Unexpected error while enqueuing batch: {e}
- Unexpected error while listing all queue items: {e}
- Unexpected error while listing all queue item ids: {e}
- Failed to get queue items
- Unexpected error while resuming queue: {e}
AI-assisted analysis of invoke-ai/InvokeAI@0b6a024f2f (2026-08-29).
Data as JSON: /api/errors/d1e754a37ba0c963.
Report an issue: GitHub.