Background
When you add a custom app (Adding a Custom App) or import custom data (Adding Custom Data to Your Apps) to an existing app via a CSV upload or the Lumos API, there are certain requirements for formatting the data that you need to follow. This article breaks down those requirements in more detail.Content
The upload serves as a “snapshot” of your account data. This means any data missing from the CSV will be treated as if it no longer exists, while existing data will be updated to reflect the information in the CSV. 💡 Include your complete account list in every upload. Lumos treats each upload, through a CSV or the Lumos API, as the current state of the app’s manually uploaded accounts. Any account that isn’t in your upload is marked Deprovisioned, unless another source, such as your IdP or an integration, reports a different status for it. To restore an account, include it in a later upload. See Adding Custom Data to Your Apps.Character formatting
The characters in an uploaded CSV must be in UTF-8format. If they are not, the upload will fail.File size
The maximum allowed file size for an uploaded CSV is 10 MB. If the file is larger than this, your upload will be rejected.Required fields
When you upload account data, you must include one or both of the following field combinations. When you import a CSV in Lumos, you match your CSV columns to these fields in the mapping step. See Adding a Custom App.- Email OR
- First Name AND Last Name
Account Status
The Status column in the data you provide has to match one of the following values.- DISCOVERED
- STAGED
- ACCESS_CREATED
- ACTIVE
- SUSPENDED
- DEPROVISIONED
- ARCHIVED
- MANUALLY_REMOVED
- ACCESS_REMOVED
- NON_CORPORATE_ACCOUNT
- WAITING_MANUAL_REMOVAL
Character Limits
- Permission values in CSV uploads are subject to character limits. The limit applies to each individual value after delimiter splitting, with an effective limit of ~220 characters give or take, depending on the permission column name. This is because Lumos builds a unique ID in the format
custom_app_permission_{permission_column_name}_{permission_value}, which must fit within 255 characters total. - Attribute column header names are also subject to a 255-character limit. This checks only the column name itself, not the values.
Using delimiters
If a cell contains multiple values (e.g.,Admin;Editor;Viewer), the limit applies to each value after splitting — not the whole cell. If the delimiter is missing or incorrect, the entire cell is treated as one value and is more likely to exceed the limit.
Error message
If a value exceeds the character limit, you’ll see: “The field ’…’ exceeds the 255-character limit. Please shorten the value, check that the correct delimiter was selected, and re-upload.”Last Login and Last Activity
UseYYYY-MM-DD, for example 2026-07-30.
These fields also accept:
134299224000000000 and Unix timestamps such as 1753879380 are not read.
Date value if mapping to End Date or Start Date Default Attributes:
If you are going to map an uploaded attribute as a Default Attribute for Start Date or End Date, upload dates must be inYYYY-MM-DD format, for example 2026-07-30.
These formats will not work as expected when mapped as the End Date or Start Date Default Attributes**:**
20.07.26,30.07.2026,07/30/2026— day-first and month-first formats.20260730— no separators.134299224000000000— Windows file time, which appears when a column is exported directly from Active Directory. Convert to a calendar date first.0001-01-01— years before 1000 are rejected. Leave the cell empty instead.