Systems & snapshots
Data types for systems, configurations, snapshots, tags, and upstream remotes.
All data types support standard serialization methods (to_json, from_json, to_dict, from_dict, to_str) which are omitted from the tables below.
System
Represents a System object that aggregates configuration, versioning, and file content
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| created_by_id | str | |
| name | str | |
| description | str | |
| archive_status | str | |
| configurations | Optional[List[SystemConfiguration]] | |
| baseline_tagged_snapshot_id | Optional[str] |
Methods:
| Name | Description |
|---|---|
| bulk_share_by_snapshot | Grant a subject access to every file in a given snapshot (defaults to the system baseline). |
| bulk_share_by_configuration | Grant a subject access to every file in the latest snapshot of a configuration. |
| bulk_share_by_system | Grant a subject access to every file in the system's baseline snapshot. |
| get_branch | Look up a branch (SnapshotTag) by name. Entry point for the branching API. |
| list_branches | List all user branches on the system (excludes the baseline tag). |
| create_branch | Create a new branch from an existing branch (like git checkout -b). |
| add_to_branch | Add file revisions and/or SubsystemLink entries to a branch in a single commit. |
| remove_from_branch | Remove file revisions and/or SubsystemLink entries from a branch in a single commit. |
| list_branch_revisions | List the file revisions tracked by a branch at its current snapshot. |
| list_branch_subsystems | List the SnapshotSubsystemItem entries tracked by a branch at its current snapshot. |
| merge_branch | Move a target branch to point at the same snapshot as a source branch (like git merge --ff). |
| rollback | Move a branch back N positions in its commit history (like git reset --hard HEAD~N). |
| list_branch_history | Return the full commit history of a branch as SnapshotTagRevision entries, newest first (like git log). |
| create_access | Create a new access relationship for a subject by ID. |
| create_access_by_email | Create a new access relationship for a subject by email. |
| update_access | Update an existing access relationship for a subject. |
| remove_access | Remove an existing access relationship. |
| list_access | List all access relationships for this resource. |
| archive | Archive the current item using the client's archive method for this resource type. |
| restore | Restore the current item using the client's restore method for this resource type. |
SystemBaseline
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| system_id | str | |
| tag_id | str | |
| snapshot_id | str |
SystemConfiguration
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| created_by_id | str | |
| system_id | str | |
| name | str | |
| sha | str | |
| archive_status | str |
Snapshot
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| configuration_id | str | |
| sha | str | |
| created_by_id | str |
SnapshotItem
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| snapshot_id | str | |
| file_revision_id | str |
SnapshotTag
A named, movable pointer to a snapshot. Used to model branches: the baseline tag is created automatically with each system, and the branching API on System creates additional tags such as main or feature/x.
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| tag | str | |
| is_baseline | bool | |
| archive_status | str | |
| snapshot_id | str |
SnapshotTagRevision
One entry in a tag's history — i.e. one of the snapshots the tag has pointed at. Returned by list_branch_history() on System.
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| created_by_id | str | |
| tag_id | str | |
| archive_status | str | |
| snapshot_id | str |
NewSystem
Attributes:
| Name | Type | Description |
|---|---|---|
| name | str | |
| description | str |
NewSystemConfiguration
Attributes:
| Name | Type | Description |
|---|---|---|
| name | str | |
| tracked_files | Optional[List[NewTrackedFile]] | |
| tracked_systems | Optional[List[NewTrackedSystem]] | Subsystems to compose into this configuration. See System composition. |
NewTrackedSystem
Reference to a child system that should be tracked as a subsystem of a parent configuration.
Attributes:
| Name | Type | Description |
|---|---|---|
| system_id | str | Id of the child system to link as a subsystem. |
| tag_id | Optional[str] | Id of a SnapshotTag on the child system to pin to. Falls back to the child's baseline. |
Subsystem
A child system as it appears on a parent configuration, including the configuration and snapshot it is pinned to.
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | Id of the child system. |
| created | datetime.datetime | |
| created_by_id | str | |
| name | str | |
| description | str | |
| archive_status | str | |
| tag_id | str | Id of the SnapshotTag the subsystem is pinned to. |
| tagged_configuration | SystemConfiguration | The child configuration the tag points at. |
| tagged_snapshot_id | str | The child snapshot the tag points at. |
| added_on | datetime.datetime | When the subsystem was added to the parent configuration. |
| added_by_id | str | |
| infosec_level | Optional[InfosecLevel] |
SnapshotSubsystemItem
A subsystem entry as captured on a snapshot. Returned by list_snapshot_subsystems().
Attributes:
| Name | Type | Description |
|---|---|---|
| system_id | str | Id of the child system. |
| system_name | str | |
| system_description | Optional[str] | |
| tag_id | str | Id of the SnapshotTag on the child. |
| tagged_configuration_id | str | Id of the child configuration the tag points at. |
| tagged_configuration_name | str | |
| tagged_snapshot_id | str | Id of the child snapshot the tag points at. |
| is_archived | bool | Whether the underlying child system is archived. |
| created_by_id | str | |
| created | datetime.datetime |
SubsystemLink
Lightweight reference to a child system (and optional tag) used by the branching API on System — for example as the subsystems argument to add_to_branch and remove_from_branch. See System composition.
Attributes:
| Name | Type | Description |
|---|---|---|
| system | System | The child system to link as a subsystem. |
| tag | Optional[SnapshotTag] | Tag on the child system to pin to. Defaults to the child's baseline when omitted. |
NewSnapshot
Attributes:
| Name | Type | Description |
|---|---|---|
| dry_run | Optional[bool] |
NewSnapshotTag
Attributes:
| Name | Type | Description |
|---|---|---|
| tag | str |
UpdateSystem
Attributes:
| Name | Type | Description |
|---|---|---|
| name | str | |
| description | str |
UpdateTag
Attributes:
| Name | Type | Description |
|---|---|---|
| snapshot_id | str |
DryRunSnapshot
Attributes:
| Name | Type | Description |
|---|---|---|
| configuration_id | str | |
| sha | str | |
| created_by_id | str | |
| created | datetime.datetime |
ResponseCreateSnapshot
Attributes:
| Name | Type | Description |
|---|---|---|
| anyof_schema_1_validator | Optional[Snapshot] | |
| anyof_schema_2_validator | Optional[DryRunSnapshot] | |
| anyof_schema_3_validator | Optional[NoOpResponse] | |
| actual_instance | Optional[Union[DryRunSnapshot, NoOpResponse, Snapshot]] | |
| any_of_schemas | Set[str] |
Methods:
| Name | Description |
|---|---|
| actual_instance_must_validate_anyof |
UpstreamRemote
UpstreamRemote(id: ‘UUID’, created: ‘Annotated[datetime, AwareDatetime]’)
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| label | str | |
| tenant_label | str | |
| tenant_id | str | |
| registry_url | str | |
| is_archived | bool |
UpstreamRemoteInfo
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| label | str |
UpstreamRemoteSync
Data class for creating a remote sync.
Attributes:
| Name | Type | Description |
|---|---|---|
| id | str | |
| created | datetime.datetime | |
| created_by_id | str | |
| upstream_remote_id | str | |
| status | UpstreamRemoteSyncStatus | |
| updated | datetime.datetime | |
| message | Optional[str] |
UpstreamRemoteSyncStatus
Enum for remote sync status.
Attributes:
| Name | Type | Description |
|---|---|---|
| PENDING | — | |
| IN_PROGRESS | — | |
| COMPLETED | — | |
| FAILED | — | |
| CANCEL | — |
CreateUpstreamRemoteSync
Attributes:
| Name | Type | Description |
|---|---|---|
| upstream_remote_id | str |
PageSystem
Attributes:
| Name | Type | Description |
|---|---|---|
| items | List[System] | |
| total | Optional[int] | |
| page | Optional[int] | |
| size | Optional[int] | |
| pages | Optional[int] |
PageSystemConfiguration
Attributes:
| Name | Type | Description |
|---|---|---|
| items | List[SystemConfiguration] | |
| total | Optional[int] | |
| page | Optional[int] | |
| size | Optional[int] | |
| pages | Optional[int] |
PageSnapshot
Attributes:
| Name | Type | Description |
|---|---|---|
| items | List[Snapshot] | |
| total | Optional[int] | |
| page | Optional[int] | |
| size | Optional[int] | |
| pages | Optional[int] |
PageSnapshotItem
A paginated response object for listing snapshot items.
PageSubsystem
Attributes:
| Name | Type | Description |
|---|---|---|
| items | List[Subsystem] | |
| total | Optional[int] | |
| page | Optional[int] | |
| size | Optional[int] | |
| pages | Optional[int] |
PageSnapshotSubsystemItem
Attributes:
| Name | Type | Description |
|---|---|---|
| items | List[SnapshotSubsystemItem] | |
| total | Optional[int] | |
| page | Optional[int] | |
| size | Optional[int] | |
| pages | Optional[int] |
PageSnapshotTag
Attributes:
| Name | Type | Description |
|---|---|---|
| items | List[SnapshotTag] | |
| total | Optional[int] | |
| page | Optional[int] | |
| size | Optional[int] | |
| pages | Optional[int] |
PageUpstreamRemote
Attributes:
| Name | Type | Description |
|---|---|---|
| items | List[UpstreamRemote] | |
| total | Optional[int] | |
| page | Optional[int] | |
| size | Optional[int] | |
| pages | Optional[int] |