Layouts
Add Layouts
You can create and manage layouts from the PackageX dashboard or via the API. Layouts are meant to organize your location.
Layout modifications require appropriate permissions. Ensure layouts are not locked at either:
- Dashboard layout settings
- Organization settings
organization.settings.locations.layouts.locked
Layout Hierarchy
Layouts support nested hierarchies through either parent_id
or parent_path
properties. When creating nested layouts:
- Create parent layouts before their children.
- Ensure unique layout codes within a location.
- Provide names for new layouts.
Example hierarchy structure:
Limitations
- Limit of 1,000 layouts per nesting level
- Layout names are required when creating new layouts.
- Layout codes must be unique within a location
For consistency in batch operations, all layouts created or updated in a single request will share the same timestamp.
Create Parent Layout
Parent layouts can be created using several formats:
Example Request
Add Child Layouts (Shelves)
Child layouts can reference their parent using either parent_id
or parent_path
:
Add Nested Layouts (Bins)
Deeper nesting follows the same pattern, using full paths for clarity:
Update Parent Layout
Parent layouts can be updated using several formats:
- By giving
id
property in payload
- By giving
layout_id
in the url
Layout Properties
Each layout supports the following properties:
id
(optional): Unique identifier starting withlay_
. Auto-generated if not provided. You can give theid
in a 22 characters alpha-numeric string.name
(required): Display name for the layout.parent_id
(optional): Direct reference to parent layout.parent_path
(optional): Full path to parent layout.code
(optional): Unique identifier within the location.metadata
(optional): Custom JSON object for additional data.