# Upload troubleshooting

## Artifact rejected before upload

Confirm the file is IPA/APK/AAB, non-empty, no larger than 2 GiB and has coherent platform/installability metadata.

## `409`

The Environment may have been archived, authority may have changed, or an idempotency key may already describe different bytes/metadata. Re-read state; do not reuse an operation identity for changed content.

## `429`

The Workspace has reached a finite Free/Team storage or Build reservation limit. Expired reservations release capacity immediately; deleting ready Builds releases capacity only after object deletion succeeds.

## Transfer interrupted

Retry through the CLI's reservation/finalization flow rather than manually writing to storage.

## Related

- [Upload](/cli/upload)
- [Artifacts and limits](/reference/artifacts-limits)
