Skip to main content

System

All the objects in SIM can be related to the system breakdown structure. SIM supports multi-level system breakdown structures stored as a tree. The system breakdown structure is not the same as the work breakdown structure.

System Object​

FieldTypeDescription
idsnowflakethe system's ID
organisation_idsnowflakethe ID of the organisation the system belongs to
numberintegerthe system's number
formatted_numberstringthe system's formatted number
codestringthe system's code (max 12 characters)
namestringthe system's name (max 60 characters)
descriptionstringthe system's description
root_prefixstringthe root system's prefix
root_id?snowflakethe root system's ID
rootsystem objectthe root system
parent_id?snowflakethe parent system's ID
parentsystem objectthe parent system
unusedbooleanwhether the system is unused (soft delete flag)

Get System​

GET /systems/{system.id}

Returns the system object for the given system id. Requires membership in the organisation that owns the system.

Error Responses​
Status CodeDescription
400The system was not found
403The user is not a member of the organisation

Get SubSystems​

GET /systems/{system.id}/subsystems

Returns an array of system objects that are subsystems of the given root system id. Requires membership in the organisation that owns the root system.

Error Responses​
Status CodeDescription
400The root system was not found
403The user is not a member of the organisation

List Systems​

GET /organisations/{organisation.id}/systems

Returns an array of system objects for the organisation. Requires membership in the organisation, or an accepted fleet share from the organisation.

Parameters​
FieldTypeDescriptionDefault
root?booleanwhen set to true, only root systems will be returnedtrue
unused?booleanwhen set to true, unused systems will be included in the responsefalse

Create System​

POST /organisations/{organisation.id}/systems

Creates a new system in the organisation. Requires the MANAGE_SYSTEMS permission.

All parameters for this method are optional.

Parameters​
FieldTypeDescriptionDefault
parent_id?snowflakethe parent system's ID; if provided, the new system becomes a subsystemnull
root_prefixstringthe root system's prefix (only used if no parent is specified)
namestringthe system's name (max 60 characters)new system
codestringthe system's code (max 12 characters)
descriptionstringthe system's descriptionnew system description
Notes​
  • If parent_id is provided, the parent system must belong to the same organisation.
  • If a parent is specified, the new system inherits the parent's root_id and root_prefix.
  • The system number is automatically assigned atomically.
Error Responses​
Status CodeDescription
400The organisation was not found
400The parent system does not belong to the organisation
403The user lacks the MANAGE_SYSTEMS permission

Update System​

PATCH /systems/{system.id}

Updates a system. Requires the MANAGE_SYSTEMS permission for the organisation.

All parameters for this method are optional. Only the fields provided will be updated.

Parameters​
FieldTypeDescription
namestringthe system's name (max 60 characters)
codestringthe system's code (max 12 characters)
descriptionstringthe system's description
unusedbooleanwhether the system is unused (soft delete flag)
root_prefixstringthe root system's prefix (only applied if system has no parent)
Notes​
  • If the system has no parent (root_id is null), setting root_prefix will also update the RootPrefix for all systems sharing the same RootId and OrganisationId.
  • Re-ordering systems is not currently supported.
Error Responses​
Status CodeDescription
400The system was not found
403The user lacks the MANAGE_SYSTEMS permission

Delete System​

Cannot delete systems, use Update setting unused to true instead.