How many images can I attach to a Sume agent run? 30, up to 500 MB

An Agent Completion takes at most 30 images, each up to 30 MB, 500 MB total. So 30 images of 30 MB cannot all fit; 16 can. Error codes inside.

5 min readSume
All posts

A Sume Agent Completion accepts a maximum of 30 images. An image over 30 MB is rejected with 413 attachment_too_large, and so is a set whose total is over 500 MB. Because 30 x 30 MB is 900 MB, you cannot fill both limits: the most 30 MB images in one run is 16.

The limits

The Agent Completions docs say attachments is optional, takes a maximum of 30 images, and that input_image is the only attachment type for now. You can send them at the top level or as input_image parts inside messages[]. Sume merges the two lists.

Attachment limits and errors, from the Agent Completions page (read 2026-10-08)
CaseStatus and code
Wrong type, missing or non-HTTPS URL, both image_url and asset_id, or not a permitted image400 invalid_attachment
asset_id unknown in this workspace400 attachment_not_found
One image over 30 MB, or set total over 500 MB413 attachment_too_large
Unreachable host, hotlink protection, or a non-2xx response502 attachment_fetch_failed

The arithmetic

The per-image cap and the total cap interact. 500 / 30 = 16.67, so at most 16 images of exactly 30 MB fit (16 x 30 = 480 MB); a 17th would bring the total to 510 MB. In practice product shots are far smaller. Thirty images at 5 MB each total 150 MB and fit comfortably.

Why image input is in the news

Several of this week's models read images. Cloudflare's Clef page (read 2026-10-08) says the model takes images and video. Z.ai's GLM-5.3-Flash docs (read 2026-10-08) describe native multimodal input for images, videos, and files. For a Sume Agent Completion, though, the image goes to the Sume agent, and the model field accepts only sume-agent. You do not pick which vision model looks at it.

A reliable pattern

The points that matter here, in the order you will hit them:

  • Host images on a URL Sume can fetch without hotlink protection, or upload an asset and send asset_id.
  • Send exactly one of image_url or asset_id per item.
  • Handle 502 attachment_fetch_failed as retryable, and the 400 and 413 codes as caller errors.
  • Use output_schema with attachments; Sume still parses the run's output against it after the run completes.

Not yet

PDFs and other files are not accepted at this time, per the docs.

Text with images

A turn with only images is allowed. If you leave out the text part, Sume tells the agent to use the attached files. You can also combine attachments with output_schema: the images go to the agent, and the final output is parsed against your schema. For the item shape, limits, and upload path, the Agent Completions page points to the Format runs documentation, because the two surfaces share the same items.

Plan for hosts that you do not control. A 502 attachment_fetch_failed covers an unreachable host, hotlink protection, and any non-2xx response, so the same image can pass on one day and fail on another if its host changes policy. If the image matters, upload it once as an asset and refer to it by asset_id; the docs report 400 attachment_not_found if that id is unknown in the workspace, which is a clear sign that you used the wrong workspace key.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume