{"id":9493,"date":"2026-01-12T08:00:54","date_gmt":"2026-01-12T08:00:54","guid":{"rendered":"https:\/\/www.process.st\/help\/?p=9493"},"modified":"2026-01-13T09:40:48","modified_gmt":"2026-01-13T09:40:48","slug":"multi-file-upload","status":"publish","type":"post","link":"https:\/\/www.process.st\/help\/multi-file-upload\/","title":{"rendered":"Multi-file Upload for Workflows"},"content":{"rendered":"<p data-start=\"88\" data-end=\"321\">We&#8217;ve improved the file upload widget so that you can now attach several documents, images, or evidence files at once.<\/p>\n<p data-start=\"88\" data-end=\"321\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-9522\" src=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2025\/12\/Updated-file-widget.png\" alt=\"Updated file widget\" width=\"50%\" srcset=\"https:\/\/www.process.st\/help\/wp-content\/uploads\/2025\/12\/Updated-file-widget.png 479w, https:\/\/www.process.st\/help\/wp-content\/uploads\/2025\/12\/Updated-file-widget-300x207.png 300w\" sizes=\"(max-width: 479px) 100vw, 479px\" \/><\/p>\n<ul>\n<li data-start=\"88\" data-end=\"321\">You can upload 10 files at a time, up to a maximum of 100 files.<\/li>\n<li data-start=\"88\" data-end=\"321\">You can <a href=\"https:\/\/www.process.st\/help\/docs\/extract-text-file-uploads\/\">extract the text<\/a> of your files for use in <a href=\"https:\/\/www.process.st\/help\/docs\/ai-tasks\/\">AI Tasks<\/a> or <a href=\"https:\/\/www.process.st\/help\/docs\/code-task\/\">Code Tasks<\/a>.<\/li>\n<li data-start=\"88\" data-end=\"321\">You can also pass the comma-separated file URLs through <a href=\"https:\/\/www.process.st\/help\/docs\/automations\/\">native Process Street automations<\/a> and <a href=\"https:\/\/zapier.com\/apps\/process-street\/integrations\">Zapier<\/a>.<\/li>\n<li data-start=\"88\" data-end=\"321\">With our <a href=\"https:\/\/public-api.process.st\/api\/v1.1\/docs\/index.html#operation\/uploadFormFieldValue\">API<\/a>, you can append files when using the endpoint for multiple file uploads.<\/li>\n<\/ul>\n<div class=\"flex flex-col text-sm @w-xl\/main:pt-header-height\">\n<article class=\"text-token-text-primary w-full focus:outline-none [--shadow-height:45px] has-data-writing-block:pointer-events-none has-data-writing-block:-mt-(--shadow-height) has-data-writing-block:pt-(--shadow-height) [&amp;:has([data-writing-block])&gt;*]:pointer-events-auto scroll-mt-[calc(var(--header-height)+min(200px,max(70px,20svh)))]\" dir=\"auto\" tabindex=\"-1\" data-turn-id=\"eabeff66-ab6f-45c2-85de-f050a0c2c286\" data-testid=\"conversation-turn-28\" data-scroll-anchor=\"true\" data-turn=\"assistant\">\n<div class=\"text-base my-auto mx-auto pb-10 [--thread-content-margin:--spacing(4)] @w-sm\/main:[--thread-content-margin:--spacing(6)] @w-lg\/main:[--thread-content-margin:--spacing(16)] px-(--thread-content-margin)\">\n<div class=\"[--thread-content-max-width:40rem] @w-lg\/main:[--thread-content-max-width:48rem] mx-auto max-w-(--thread-content-max-width) flex-1 group\/turn-messages focus-visible:outline-hidden relative flex w-full min-w-0 flex-col agent-turn\" tabindex=\"-1\">\n<div class=\"flex max-w-full flex-col grow\">\n<div class=\"min-h-8 text-message relative flex w-full flex-col items-end gap-2 text-start break-words whitespace-normal [.text-message+&amp;]:mt-1\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"12a4ef76-bfdf-4e22-93d9-a83a97dad2ca\" data-message-model-slug=\"gpt-5-1\">\n<div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[1px]\">\n<div class=\"markdown prose dark:prose-invert w-full break-words light markdown-new-styling\">\n<p data-start=\"43\" data-end=\"183\" data-is-last-node=\"\" data-is-only-node=\"\">Original file upload fields will continue to allow only one file. Any new file upload fields you add going forward will support multiple files by default.<\/p>\n<h2 data-start=\"43\" data-end=\"183\">FAQ<\/h2>\n<p data-start=\"0\" data-end=\"103\"><strong>How about the file upload limits; do they still remain the same as before? Are they cumulative?<\/strong><\/p>\n<p data-start=\"104\" data-end=\"235\">The upload limits are the same as before, and they\u2019re counted per file,\u00a0not cumulative across multiple uploads.<\/p>\n<hr data-start=\"237\" data-end=\"240\" \/>\n<p data-start=\"242\" data-end=\"292\"><strong>Do the limits apply per uploaded file type?<\/strong><\/p>\n<p data-start=\"293\" data-end=\"387\">The limits are enforced per file (so each uploaded file is evaluated on its own).<\/p>\n<hr data-start=\"389\" data-end=\"392\" \/>\n<p data-start=\"394\" data-end=\"509\"><strong>For text extraction, is it also per file? If I have 10 files, does each file get the 512KB plain text limit?<\/strong><\/p>\n<p data-start=\"510\" data-end=\"678\">Technically, yes, extraction is per file. So each of your 10 files can be extracted up to the per-file extraction cap (e.g., 512KB plain text per file).<\/p>\n<p data-start=\"680\" data-end=\"902\" data-is-last-node=\"\" data-is-only-node=\"\"><strong data-start=\"680\" data-end=\"692\">However:<\/strong> if you insert the extracted text as a variable, the platform may truncate the result because long text fields have a maximum size limit, even if the extraction itself was within the per-file limit.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/article>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>We&#8217;ve improved the file upload widget so that you can now attach several documents, images, or evidence files at once. You can upload 10 files at a time, up to a maximum of 100 files. You can extract the text of your files for use in AI Tasks or Code Tasks. You can also pass [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"available_plan":"All plans","available_product":"Files","footnotes":""},"categories":[4],"tags":[3,81],"class_list":["post-9493","post","type-post","status-publish","format-standard","hentry","category-updates","tag-forms","tag-workflows"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/posts\/9493","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/comments?post=9493"}],"version-history":[{"count":10,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/posts\/9493\/revisions"}],"predecessor-version":[{"id":9544,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/posts\/9493\/revisions\/9544"}],"wp:attachment":[{"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/media?parent=9493"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/categories?post=9493"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.process.st\/help\/wp-json\/wp\/v2\/tags?post=9493"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}