<div class="section-label"><span class="num">02</span> Payload size</div>
<div class="section-title">Keep <em>X</em> under 5 MiB, or upload it.</div>
The attribute matrix `X` in the request body must stay at or under **5 MiB**. Drop columns and rows you do not need. The language clients already send compact JSON.
The [[API/Clients/Python|Python client]] uploads `X` for you when it would exceed 5 MiB, or when you pass `x_as_reference=True`. R and MATLAB do not upload yet: keep the matrix under 5 MiB, or upload from Python and pass the returned `s3_key`.
A body that is too large is rejected (413). Fetching a single huge result field can also hit a 4 MiB cap; ask for the full result or a smaller field instead.
## Related
- [[API/Introduction|API]]
- [[API/Limits/Arrays|Arrays]] · [[API/Limits/Throttle Limits|Quota]]
- [[API/Clients/Python|Python]]