CrewSheetBlock
The state of one user's sheet of a single entry type, for the period that
contains the requested sheet_date.
A block is present for an entry type only when all of the following are
true: the type is enabled on the Crew Entry screen, you hold that type's
keeper ability, you share a group with the user that carries the role
granting it, and the type was not excluded by the sheet_types parameter.
A block describes a period, not necessarily a saved sheet. When the user has
no sheet for the period, the block is still returned but the sheet-specific
fields (id_sheet, status_int, status_str, pname, dates) are all
absent. Test for id_sheet to tell the two apart. If the sheet_state
filter is in use, a block is only returned when its own state is one of the
requested states, so a user can appear with fewer blocks than you asked for.
A block also carries a few fields that exist to drive the Journyx web interface, such as display classes and a link into a server-rendered screen. They are deliberately left out of this reference, are not part of the supported interface, and may change or disappear in any release. Build against the fields documented below.
The internal ID of the user's sheet. Absent when the user has no sheet for this period yet. Pass this to the Submit crew sheets endpoint.
6C5469825DAE4ABF9654B7A567141CD8The entry type this block describes. Note that the third type is called
custom here (it is the Custom Entry / mileage type); elsewhere in the
API and in the product's history it is sometimes called mileage.
Possible values: [time, expense, custom]
timeThe administrator-configurable display label for this entry type, for
example Time. Site labels are renameable, so do not test against this
value; use sheettype instead.
TimeThe sheet's state as a number: 0 open, 1 submitted, 2 approved,
3 rejected. Absent when no sheet exists for the period.
This is the field to test in code. The sheet_state filter uses the
equivalent names (open, submitted, approved, rejected), plus
no_sheet for a period with no sheet, which has no numeric form.
Possible values: [0, 1, 2, 3]
0A human-readable label for the sheet's state, suitable for display.
Absent when no sheet exists for the period. Do not test against this
value; use status_int.
Open for EntryThe sheet's name, which for a period sheet is normally its date range. Absent when no sheet exists for the period.
03/09/2025 - 03/15/2025The sheet's date range as displayed, in the signed-in user's date format. Absent when no sheet exists for the period.
03/09/2025 - 03/15/2025Why an approver rejected the sheet. Present only when status_int is
3 (rejected).
Please split the Friday hours across the two tasks.The full name of the user who owns the sheet. This repeats
id_user_properties.fullname on the enclosing row, and exists so that
a submit request echoed back from a block can be labeled in an error
message.
Alice Dev{
"id_sheet": "6C5469825DAE4ABF9654B7A567141CD8",
"sheettype": "time",
"sheettype_label": "Time",
"status_int": 0,
"status_str": "Open for Entry",
"pname": "03/09/2025 - 03/15/2025",
"dates": "03/09/2025 - 03/15/2025",
"reject_reason": "Please split the Friday hours across the two tasks.",
"user_name": "Alice Dev"
}