f8025de20169
Create web packages
Create up to BATCH_MAX_ITEMS web packages in a single request.
Each item supplies a content_url that the server fetches and re-hosts asynchronously. The response therefore describes rows in state PROCESSING — poll GET /v2/web-packages/{id} until state becomes READY or ERROR. A malformed archive surfaces as state=ERROR, not as an error on this response.
Returns 200 if all items succeed, 207 if any fail, 400 if the envelope is empty or over the cap.
Rate limited more tightly than a plain row-writing batch endpoint: every accepted item queues an outbound fetch of up to REMOTE_FETCH_MAX_BYTES, so this endpoint converts one request into real egress. Actual concurrent fetching is additionally bounded by Celery worker concurrency.
No within-batch deduplication is applied — WebPackage has no natural uniqueness key, and two identical content_url values are a legitimate request for two distinct packages.
Required OAuth scope: web-packages:write
Request body
Response
OK