Error Codes
Complete reference of Zipline API error codes and their HTTP statuses
This page lists all 125 error codes defined by the current OpenAPI schema. Use the numeric code for programmatic error handling rather than parsing the error message.
Validation and client errors
The request was malformed or contained invalid data.
| Code | HTTP status | Message |
|---|---|---|
E1000 | 400 | Invalid request schema |
E1001 | 400 | Invalid upload options |
E1002 | 400 | Invalid partial upload |
E1003 | 400 | Partial upload identifier is invalid |
E1004 | 400 | Partial upload was not detected |
E1005 | 400 | Partial uploads only support one file field |
E1006 | 400 | File extension is not allowed |
E1007 | 400 | Invalid characters in filename |
E1008 | 400 | Invalid characters in original filename |
E1009 | 400 | Invalid filename |
E1010 | 400 | Unrecognized file mimetype |
E1011 | 400 | File already in folder |
E1012 | 400 | File not in folder |
E1013 | 400 | File ID is required |
E1014 | 400 | File with this name already exists |
E1015 | 400 | A folder cannot be its own parent |
E1016 | 400 | Cannot move folder into one of its descendants |
E1019 | 400 | Invalid action |
E1020 | 400 | Cannot PATCH without an action |
E1021 | 400 | Cannot delete current session, use log out instead. |
E1022 | 400 | Invalid settings update |
E1023 | 400 | Invalid setup, no settings found. Run the setup process again before exporting data. |
E1024 | 400 | Export is not completed |
E1025 | 400 | No files to export |
E1026 | 400 | No files found for the given request |
E1027 | 400 | No files were deleted. |
E1028 | 400 | No files were updated. |
E1029 | 400 | No ID provided |
E1030 | 400 | No providers to delete |
E1031 | 400 | Session not found in logged in sessions |
E1032 | 400 | Invalid tag specified |
E1033 | 400 | Cannot create tag with the same name |
E1034 | 400 | Tag name already exists |
E1035 | 400 | Invalid invite code |
E1036 | 400 | Invites aren't enabled |
E1037 | 400 | User registration is disabled |
E1038 | 400 | Username already exists |
E1039 | 400 | Username is taken |
E1040 | 400 | A user with this username already exists |
E1041 | 400 | Vanity already exists |
E1042 | 400 | Vanity already taken |
E1043 | 400 | You can't delete your last OAuth provider without a password |
E1044 | 400 | Invalid username or password |
E1045 | 400 | Invalid code |
E1046 | 400 | Missing WebAuthn challenge ID |
E1047 | 400 | Missing WebAuthn payload |
E1048 | 400 | Passkey registration timed out, try again later |
E1049 | 400 | Error verifying passkey registration |
E1050 | 400 | Could not verify passkey registration |
E1051 | 400 | Error verifying passkey authentication |
E1052 | 400 | Could not verify passkey authentication |
E1053 | 400 | You don't have TOTP enabled |
E1054 | 400 | TOTP is disabled |
E1055 | 400 | Password must be a string |
E1056 | 400 | The 'maxBytes' value is required |
E1057 | 400 | The 'maxFiles' value is required |
E1058 | 400 | From date must be before to date |
E1059 | 400 | From date must be in the past |
E1060 | 400 | Passkey has legacy registration data and cannot be used |
E1061 | 400 | Invalid multipart/form-data request |
E1062 | 400 | No files in multipart/form-data request |
E1063 | 400 | Already linked to this OAuth provider |
E1064 | 400 | Invalid OAuth state parameter |
E1065 | 400 | Invalid MIME type |
E1066 | 400 | Current password is incorrect |
E1067 | 400 | Current password is required to set a new password |
E1068 | 400 | Couldn't find current password for this account |
E1069 | 400 | TOTP is already enabled |
E1070 | 400 | You don't own this passkey |
Session and authentication errors
The request was not authenticated or the session is invalid.
| Code | HTTP status | Message |
|---|---|---|
E2000 | 401 | Invalid login session |
E2001 | 401 | Invalid token |
E2002 | 401 | Not logged in |
E2003 | 401 | OAuth provider is not configured (or misconfigured) |
E2004 | 401 | Invalid login steps (cookie relying on token) |
Permission errors
The authenticated user does not have permission to perform the operation.
| Code | HTTP status | Message |
|---|---|---|
E3000 | 403 | Admin only |
E3001 | 403 | Metrics are disabled |
E3002 | 403 | Folder is not open |
E3003 | 403 | Parent folder does not belong to you |
E3004 | 403 | Password protected |
E3005 | 403 | Incorrect password |
E3006 | 403 | Target folder not found |
E3007 | 403 | You cannot assign this role |
E3008 | 403 | You cannot create this role |
E3009 | 403 | You cannot delete this user |
E3010 | 403 | You cannot delete yourself |
E3011 | 403 | You do not own this folder |
E3012 | 403 | Shortening this URL would exceed your quota of X URLs |
E3013 | 403 | You don't have permission to delete the selected files |
E3014 | 403 | You don't have permission to modify the selected files |
E3015 | 403 | Not super admin |
E3016 | 403 | OAuth registration is disabled |
E3017 | 403 | OAuth login is not allowed for this account |
E3018 | 403 | Invalid access token provided. |
E3019 | 403 | You cannot modify this user |
Not found errors
The requested resource does not exist.
| Code | HTTP status | Message |
|---|---|---|
E4000 | 404 | File not found |
E4001 | 404 | Folder not found |
E4002 | 404 | Folder or file not found |
E4003 | 404 | Folder or related records not found during deletion |
E4004 | 404 | Invite not found |
E4005 | 404 | Invite not found through ID or code |
E4006 | 404 | No files were moved. |
E4007 | 404 | Parent folder not found |
E4008 | 404 | Target folder not found |
E4009 | 404 | User not found |
E4010 | 404 | No settings table found |
E4011 | 404 | Thumbnails task not found |
Constraint errors
The request exceeded a configured size, quota, or other limit.
| Code | HTTP status | Message |
|---|---|---|
E5000 | 413 | File size exceeds the configured limit |
E5001 | 413 | File is too large |
E5002 | 413 | Storage quota exceeded |
Internal errors
The server could not complete the operation.
| Code | HTTP status | Message |
|---|---|---|
E6000 | 500 | Failed to delete invite |
E6001 | 500 | Failed to check for updates |
E6002 | 500 | Failed to rename file in datasource |
E6003 | 500 | There was an error during a healthcheck |
E6004 | 500 | Failed to fetch OAuth access token |
E6005 | 500 | No access token in OAuth response |
E6006 | 500 | No refresh token in OAuth response |
E6007 | 500 | Failed to fetch OAuth user |
E6008 | 500 | OAuth provider request failed |
E6009 | 500 | Couldn't create user via OAuth profile |
E6010 | 500 | The username is already taken by another account |
Generic errors
Fallback errors used when a more specific code is not available.
| Code | HTTP status | Message |
|---|---|---|
E9000 | 400 | Bad request |
E9001 | 403 | Forbidden |
E9002 | 404 | Not found |
E9004 | 500 | Internal server error |
E9005 | 500 | Database operation failed |