Skip to main content
Version: 2026.04

Client

The Client class is the main entry point for the Istari Digital Platform Python SDK. It provides methods for managing files, models, artifacts, jobs, access control, systems, agents, and more.

The SDK is shipped as the istari-digital-client package on PyPI. Supported Python versions for the client are listed on the PyPI project description.

from istari_digital_client import Client, Configuration

client = Client(Configuration(
registry_url="https://your-instance.istari.digital",
registry_auth_token="your-personal-access-token",
))

See Setup for installation and configuration details.

Server compatibility

Once instantiated, the client can verify it understands the registry it is talking to.

  • Client.check_compatibility() — calls the readiness probe and returns a CompatibilityResult with the server's version and a verdict, or None if the server didn't return compatibility headers.
  • Client.last_compatibility_result — the most recent compatibility result captured by any request, without forcing a new call.

Pagination

Most list_* methods support pagination via page and size parameters:

  • page (int) – Page number. Minimum: 1. Default: 1.
  • size (int) – Number of items per page. Range: 0100. Default: 10.

Common fields

Several methods accept the same optional metadata fields:

FieldTypeDescription
display_namestr | NoneHuman-readable name
descriptionstr | NoneText describing the resource
version_namestr | NoneUser-defined version label
external_identifierstr | NoneExternal system identifier for cross-referencing
sourceslist[NewSource | str] | NoneAssociated source references

String constraints (SDK and platform)

The Python SDK validates some fields from the bundled OpenAPI schema. The Istari Digital Platform registry service also persists data with stricter limits than the client always checks locally.

  • File revision metadata (description, display_name, version_name, external_identifier on uploads such as add_file, add_model, add_artifact, and create_revision): In the registry database these are stored as 255-character columns on the file_revision row (same length class as mime, name, and extension). The bundled FileRevision OpenAPI schema may omit maxLength, and the client does not apply Pydantic max_length for these fields, but values longer than 255 characters are not storable and should be treated as invalid for practical use.
  • Control tags (create_control_tag / update_control_tag): Optional description on NewControlTag and UpdateControlTag is validated as 0–255 characters on the platform (and in the OpenAPI schema). See Access control.
  • Full-text search (search_resources): FullTextSearch on the platform requires search_term to be at least 1 character, page at least 1, and size between 1 and 100 (defaults page 1, size 10). See search_resources.

Method reference

Methods are grouped by domain. Each page is self-contained with full parameter details.

Files, models & artifacts

Upload, version, and manage the core data types.

MethodDescription
add_file / add_model / add_artifactUpload a new file, model, or artifact
add_artifacts_bulkUpload up to 10 artifacts in one call (deprecated)
update_file / update_model / update_artifactReplace contents with a new version
get_file / get_model / get_artifactRetrieve by ID
list_files / list_models / list_artifactsList with pagination and filters
create_revision / update_revision_contentManage file revisions
read_contents / read_propertiesRead file data and metadata
get_resource / list_resources / search_resourcesCross-type lookup and search
archive_* / restore_*Archive or restore any resource

Jobs

Create and monitor function execution.

MethodDescription
add_jobCreate a new job on a model
get_job / list_jobs / list_model_jobsRetrieve and filter jobs
update_job_statusTransition a job to a new status
update_job_assigned_agent / remove_job_assigned_agentAssign or unassign an agent
update_job_assigned_agent_pool / remove_job_assigned_agent_poolAssign or unassign an agent pool

Systems & snapshots

Manage systems, configurations, and point-in-time snapshots.

MethodDescription
create_system / get_system / list_systemsManage systems
create_configuration / list_system_configurationsSystem configurations
list_configuration_revisionsAudit revisions tracked by a configuration
create_snapshot / list_snapshotsCreate and browse snapshots
create_tag / update_tag / list_tags / get_tag_historyLabel snapshots with tags and view history

Access control

Share resources and manage control tags.

MethodDescription
create_access / update_access / remove_accessGrant, modify, or revoke access
bulk_create_accessShare multiple resources at once
create_control_tag / update_control_tagCreate and manage control tags
add_*_control_taggings / remove_*_control_taggingsAssign or revoke tags on resources
list_resource_type_permissionsQuery permissions across resources

Infosec levels

Classify Resources and configure the platform infosec schema.

MethodDescription
assign_infosec_level / list_infosec_levelsClassify Resources, list available levels
get_platform_infosec_settings / enable_platform_infosec_settingsRead or update the platform schema

Documents

Manage versioned ProseMirror documents on a System configuration.

MethodDescription
create_document / update_document / archive_documentCreate, update, or archive a document
get_document / get_document_by_revision_idRetrieve a document or a specific revision
list_documents / list_configuration_documentsList documents globally or per-configuration
export_documentExport to json, markdown, docx, or pdf

Agents, modules & tools

Register agents, manage pools, and work with modules and functions.

MethodDescription
register_agent / get_agent / list_agentsAgent lifecycle
archive_agent / restore_agentArchive or restore an agent
create_agent_pool / update_agent_pool / delete_agent_poolManage agent pools
archive_agent_pool / restore_agent_poolArchive or restore a pool
create_module / get_module / list_modulesModule management
get_function / list_functionsQuery available functions
create_tool / list_toolsTool and version management

Users, tokens & admin

Manage users, authentication, and platform operations.

MethodDescription
get_current_user / list_usersUser lookup
create_personal_access_token / revoke_all_personal_access_tokensToken management
create_app_integration / create_auth_integrationIntegration setup
generate_upload_url / generate_download_urlTemporary storage URLs
sync_upstream_remotes / check_upstream_remote_compatibilityDrive and verify upstream remote syncs
liveness_check / readiness_checkHealth probes

Enums

Reference tables for all enum types: JobStatusName, ArchiveStatus, AccessRelation, OS, FunctionAuthType, InfosecLevelObjectType, and more.

Data types

Structured types returned by client methods and accepted as parameters. Each page groups related types by domain, matching the method pages above.

PageContents
Files, models & artifactsFile, Model, Artifact, FileRevision, Comment, NewSource, and pagination wrappers
JobsJob, JobStatus, JobStatusName, JobStatusMessage
Systems & snapshotsSystem, Snapshot, SnapshotTag, SystemConfiguration, UpstreamRemote
Access controlPermission, AccessRelationship, ControlTag, SubjectInfo
Agents & modulesAgent, AgentPool, Module, Function, Tool, and related input/status types
Users, tokens & adminUser, Token, Tenant, AppIntegration, AuthIntegration
Common typesArchive, Restore, Pageable, FilterBy, PatchOp, and validation types