Python API¶
The Python package is a typed wrapper over the installed C ABI.
Python access to the public PostProject C ABI.
- class postproject.Activity(id: 'ActivityId', kind: 'str', started_at_unix_micros: 'int | None', finished_at_unix_micros: 'int | None', tool: 'ToolIdentity | None', agent: 'AgentIdentity | None', inputs: 'tuple[ActivityEdge, ...]', outputs: 'tuple[ActivityEdge, ...]')¶
Bases:
object- agent: AgentIdentity | None¶
- finished_at_unix_micros: int | None¶
- id: ActivityId¶
- inputs: tuple[ActivityEdge, ...]¶
- kind: str¶
- outputs: tuple[ActivityEdge, ...]¶
- started_at_unix_micros: int | None¶
- tool: ToolIdentity | None¶
- class postproject.ActivityCreatedEvent(activity_id: 'ActivityId', kind: 'str')¶
Bases:
object- activity_id: ActivityId¶
- kind: str¶
- class postproject.ActivityEdge(representation_id: 'RepresentationId', role: 'str | None' = None)¶
Bases:
object- representation_id: RepresentationId¶
- role: str | None¶
- class postproject.ActivityId(value: UUID)¶
Bases:
_TypedIdStable identity of one provenance activity.
- class postproject.ActivityInputAddedEvent(activity_id: 'ActivityId', representation_id: 'RepresentationId', role: 'str | None' = None)¶
Bases:
object- activity_id: ActivityId¶
- representation_id: RepresentationId¶
- role: str | None¶
- class postproject.ActivityOutputAddedEvent(activity_id: 'ActivityId', representation_id: 'RepresentationId', role: 'str | None' = None)¶
Bases:
object- activity_id: ActivityId¶
- representation_id: RepresentationId¶
- role: str | None¶
- class postproject.ActivitySpec(kind: 'str', outputs: 'tuple[ActivityEdge, ...]', inputs: 'tuple[ActivityEdge, ...]' = (), started_at_unix_micros: 'int | None' = None, finished_at_unix_micros: 'int | None' = None, tool: 'ToolIdentity | None' = None, agent: 'AgentIdentity | None' = None)¶
Bases:
object- agent: AgentIdentity | None¶
- finished_at_unix_micros: int | None¶
- inputs: tuple[ActivityEdge, ...]¶
- kind: str¶
- outputs: tuple[ActivityEdge, ...]¶
- started_at_unix_micros: int | None¶
- tool: ToolIdentity | None¶
- class postproject.AgentIdentity(name: 'str | None' = None, identifier: 'ExternalIdentifier | None' = None)¶
Bases:
object- identifier: ExternalIdentifier | None¶
- name: str | None¶
- exception postproject.AlreadyExistsError(code: int, message: str)¶
Bases:
PostProjectErrorA unique production object or attachment already exists.
- exception postproject.AmbiguousResolutionError(code: int, message: str)¶
Bases:
PostProjectErrorA mutation requires an explicit choice between resolution candidates.
- class postproject.Asset(id: AssetId, created_at_unix_micros: int, display_name: str | None, import_source: str | None)¶
Bases:
objectImmutable logical asset summary.
- created_at_unix_micros: int¶
- display_name: str | None¶
- import_source: str | None¶
- class postproject.AssetId(value: UUID)¶
Bases:
_TypedIdStable identity of one logical asset.
- class postproject.AvailabilityIssue(resource_id: 'ResourceId', required: 'bool', kind: 'AvailabilityIssueKind', frames: 'tuple[int, ...]')¶
Bases:
object- frames: tuple[int, ...]¶
- kind: AvailabilityIssueKind¶
- required: bool¶
- resource_id: ResourceId¶
- class postproject.AvailabilityIssueKind(*values)¶
Bases:
EnumMachine-readable category of a representation availability issue.
- AMBIGUOUS_RESOURCE = 'ambiguous_resource'¶
- MISSING_FRAMES = 'missing_frames'¶
- OFFLINE_RESOURCE = 'offline_resource'¶
- RESOURCE_ERROR = 'resource_error'¶
- exception postproject.ConflictError(code: int, message: str)¶
Bases:
PostProjectErrorAn operation conflicts with current transaction or production state.
- class postproject.ContentStructureKind(*values)¶
Bases:
EnumStructural shape used to realize a representation.
- IMAGE_SEQUENCE = 'image_sequence'¶
- ORDERED_PARTS = 'ordered_parts'¶
- PACKAGE = 'package'¶
- SINGLE_RESOURCE = 'single_resource'¶
- class postproject.EvidenceKind(*values)¶
Bases:
EnumMachine-readable reason supporting or opposing a candidate.
- CONFLICTING_CANDIDATE = 'conflicting_candidate'¶
- DISCOVERY_ERROR = 'discovery_error'¶
- EXACT_FINGERPRINT_MATCH = 'exact_fingerprint_match'¶
- FILE_NAME_MATCH = 'file_name_match'¶
- FILE_SIZE_MATCH = 'file_size_match'¶
- FULL_HASH_MATCH = 'full_hash_match'¶
- KNOWN_LOCATOR_AVAILABLE = 'known_locator_available'¶
- MEDIA_ROOT_RELATION = 'media_root_relation'¶
- MEDIA_ROOT_UNAVAILABLE = 'media_root_unavailable'¶
- MEDIA_ROOT_UNMAPPED = 'media_root_unmapped'¶
- PARTIAL_FINGERPRINT_MATCH = 'partial_fingerprint_match'¶
- RELATIVE_PATH_SIMILARITY = 'relative_path_similarity'¶
- class postproject.ExternalIdentifier(scheme: str, value: str, qualifier: str | None = None)¶
Bases:
objectOpaque external identity preserved exactly as supplied.
- qualifier: str | None¶
- scheme: str¶
- value: str¶
- class postproject.ExternalIdentifierAddedEvent(target: 'ObjectReference', identifier: 'ExternalIdentifier')¶
Bases:
object- identifier: ExternalIdentifier¶
- target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId¶
- class postproject.ExternalIdentifierRemovedEvent(target: 'ObjectReference', identifier: 'ExternalIdentifier')¶
Bases:
object- identifier: ExternalIdentifier¶
- target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId¶
- class postproject.FileResourceInput(path: str, role: str, required: bool = True)¶
Bases:
objectFilesystem source and membership semantics for a compound member.
- path: str¶
- required: bool¶
- role: str¶
- class postproject.Fingerprint(algorithm: str, version: int, value: bytes)¶
Bases:
objectVersioned, opaque content-identity evidence.
- algorithm: str¶
- value: bytes¶
- version: int¶
- exception postproject.FingerprintError(code: int, message: str)¶
Bases:
PostProjectErrorMedia fingerprinting failed.
- class postproject.HostObjectBinding(production_id: ProductionId, object: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId)¶
Bases:
objectPortable production-scoped reference stored by a host application.
- object: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId¶
- production_id: ProductionId¶
- class postproject.ImageSequenceDescriptor(prefix: str, suffix: str, padding: int, start: int, end: int, step: int, rate_numerator: int, rate_denominator: int, missing_frames: tuple[int, ...])¶
Bases:
objectCompact patterned description of an image sequence.
- end: int¶
- missing_frames: tuple[int, ...]¶
- padding: int¶
- prefix: str¶
- rate_denominator: int¶
- rate_numerator: int¶
- start: int¶
- step: int¶
- suffix: str¶
- class postproject.ImageSequenceInput(directory: str, prefix: str, suffix: str, padding: int, start: int, end: int, step: int, rate_numerator: int, rate_denominator: int, missing_frames: tuple[int, ...] = ())¶
Bases:
objectFilesystem source and compact descriptor for a new image sequence.
- directory: str¶
- end: int¶
- missing_frames: tuple[int, ...]¶
- padding: int¶
- prefix: str¶
- rate_denominator: int¶
- rate_numerator: int¶
- start: int¶
- step: int¶
- suffix: str¶
- exception postproject.InternalError(code: int, message: str)¶
Bases:
PostProjectErrorThe native library reported an internal invariant failure.
- exception postproject.InvalidArgumentError(code: int, message: str)¶
Bases:
PostProjectError,ValueErrorAn argument violates the public domain contract.
- exception postproject.IoError(code: int, message: str)¶
Bases:
PostProjectError,OSErrorA filesystem or operating-system operation failed.
- class postproject.Locator(id: 'LocatorId', uri: 'str', availability: 'LocatorAvailability', last_seen_unix_micros: 'int | None')¶
Bases:
object- availability: LocatorAvailability¶
- last_seen_unix_micros: int | None¶
- uri: str¶
- class postproject.LocatorAddedEvent(resource_id: 'ResourceId', locator_id: 'LocatorId')¶
Bases:
object- resource_id: ResourceId¶
- class postproject.LocatorAvailability(*values)¶
Bases:
EnumLast observed availability of a resource locator.
- OFFLINE = 'offline'¶
- ONLINE = 'online'¶
- UNKNOWN = 'unknown'¶
- class postproject.LocatorId(value: UUID)¶
Bases:
_TypedIdStable identity of one resource locator.
- class postproject.LocatorRetiredEvent(resource_id: 'ResourceId', locator_id: 'LocatorId')¶
Bases:
object- resource_id: ResourceId¶
- class postproject.MediaRoot(id: MediaRootId, name: str, label: str | None, legacy_uri: str | None, priority: int, enabled: bool)¶
Bases:
objectImmutable configured resolver root.
- enabled: bool¶
- id: MediaRootId¶
- label: str | None¶
- legacy_uri: str | None¶
- name: str¶
- priority: int¶
- class postproject.MediaRootAddedEvent(media_root_id: 'MediaRootId')¶
Bases:
object- media_root_id: MediaRootId¶
- class postproject.MediaRootEnabledChangedEvent(media_root_id: 'MediaRootId', enabled: 'bool')¶
Bases:
object- enabled: bool¶
- media_root_id: MediaRootId¶
- class postproject.MediaRootId(value: UUID)¶
Bases:
_TypedIdStable identity of one configured media root.
- class postproject.MediaRootRemovedEvent(media_root_id: 'MediaRootId')¶
Bases:
object- media_root_id: MediaRootId¶
- class postproject.MetadataAddedOrReplacedEvent(target: 'ObjectReference', property: 'MetadataProperty')¶
Bases:
object- property: MetadataProperty¶
- target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId¶
- class postproject.MetadataAssertion(target: 'ObjectReference', property: 'MetadataProperty', value: 'MetadataValue')¶
Bases:
object- property: MetadataProperty¶
- target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId¶
- class postproject.MetadataDecimal(coefficient: 'int', scale: 'int')¶
Bases:
object- coefficient: int¶
- scale: int¶
- class postproject.MetadataLanguageString(value: 'str', language: 'str')¶
Bases:
object- language: str¶
- value: str¶
- class postproject.MetadataList(values: 'tuple[MetadataValue, ...]')¶
Bases:
object- values: tuple[MetadataString | MetadataLanguageString | MetadataI64 | MetadataU64 | MetadataDecimal | MetadataBool | MetadataTimestamp | MetadataUri | MetadataBytes | MetadataRational | MetadataList | MetadataStruct | MetadataReference, ...]¶
- class postproject.MetadataProperty(vocabulary: str, property: str)¶
Bases:
objectVocabulary-qualified metadata property identity.
- property: str¶
- vocabulary: str¶
- class postproject.MetadataRational(numerator: 'int', denominator: 'int')¶
Bases:
object- denominator: int¶
- numerator: int¶
- class postproject.MetadataReference(target: 'ObjectReference')¶
Bases:
object- target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId¶
- class postproject.MetadataRemovedEvent(target: 'ObjectReference', property: 'MetadataProperty')¶
Bases:
object- property: MetadataProperty¶
- target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId¶
- class postproject.MetadataStruct(fields: 'tuple[MetadataStructField, ...]')¶
Bases:
object- fields: tuple[MetadataStructField, ...]¶
- class postproject.MetadataStructField(name: 'str', value: 'MetadataValue')¶
Bases:
object- name: str¶
- exception postproject.MigrationError(code: int, message: str)¶
Bases:
PostProjectErrorA production schema could not be migrated safely.
- class postproject.NativeLibrary(path: str | PathLike[str] | None = None)¶
Bases:
objectOne explicitly located PostProject shared library.
- check(status: int, error: _Pointer[Error]) None¶
Release an optional native error and raise its Python equivalent.
- exception postproject.NotFoundError(code: int, message: str)¶
Bases:
PostProjectErrorA requested production object does not exist.
- class postproject.OriginIdentity(name: str, version: str | None = None, uri: str | None = None)¶
Bases:
objectIntegrating application or process identity, not an authenticated user.
- name: str¶
- uri: str | None¶
- version: str | None¶
- exception postproject.PostProjectError(code: int, message: str)¶
Bases:
RuntimeErrorBase error reported by the native PostProject library.
- class postproject.Production(native: NativeLibrary, handle: _Pointer[NativeProduction])¶
Bases:
objectAn owned native production handle supporting concurrent operations.
Calls may run from multiple threads, but
close()must not overlap them.- property activities_consuming: _ActivitiesByRepresentation¶
Return consuming activities keyed by representation identity.
- property activities_producing: _ActivitiesByRepresentation¶
Return producing activities keyed by representation identity.
- property assets: _Assets¶
Return an iterable asset collection with identity membership checks.
- changes_since(sequence: int, limit: int) tuple[Revision, ...]¶
Return a bounded ascending page of revisions after
sequence.
- close() None¶
Release the native handle. Repeated calls are harmless.
- classmethod create(path: str | PathLike[str], display_name: str | None = None, *, library_path: str | PathLike[str] | None = None) Self¶
Create a new production without overwriting an existing path.
- property external_identifiers: _ExternalIdentifiers¶
Return external identifiers keyed by their target object.
- property host_bindings: _HostBindings¶
Return the portable host-binding formatter and parser.
- property id: ProductionId¶
Return this production’s stable identity.
- property metadata: _Metadata¶
Return metadata assertions keyed by their target object.
- property metadata_by_property: _MetadataByProperty¶
Return metadata assertions keyed by vocabulary-qualified property.
- property objects_by_external_identifier: _ObjectsByExternalIdentifier¶
Return object matches keyed by
(scheme, value).
- classmethod open(path: str | PathLike[str], *, library_path: str | PathLike[str] | None = None) Self¶
Open an existing production.
- property provenance_ancestors: _ProvenanceRepresentations¶
Return transitive ancestors keyed by representation identity.
- property provenance_descendants: _ProvenanceRepresentations¶
Return transitive descendants keyed by representation identity.
- property representations: _Representations¶
Return immutable representation snapshots keyed by asset identity.
- property resolutions: _Resolutions¶
Return representation-resolution results keyed by asset identity.
- resolve(asset_id: AssetId, root_mappings: Mapping[str, str | PathLike[str]] | None = None) tuple[RepresentationResolution, ...]¶
Resolve an asset using optional machine-local root mappings.
- property revision_events: _RevisionEvents¶
Return semantic event lists keyed by revision identity.
- transaction(*, origin: OriginIdentity | str | None = None, message: str | None = None) Transaction¶
Begin a transaction that commits on a clean context-manager exit.
- class postproject.ProductionId(value: UUID)¶
Bases:
_TypedIdStable identity of one PostProject production.
- class postproject.Representation(id: 'RepresentationId', asset_id: 'AssetId', kind: 'RepresentationKind', structure_kind: 'ContentStructureKind', members: 'tuple[RepresentationMember, ...]', image_sequence: 'ImageSequenceDescriptor | None', fingerprints: 'tuple[Fingerprint, ...]', resources: 'tuple[Resource, ...]')¶
Bases:
object- fingerprints: tuple[Fingerprint, ...]¶
- image_sequence: ImageSequenceDescriptor | None¶
- kind: RepresentationKind¶
- members: tuple[RepresentationMember, ...]¶
- structure_kind: ContentStructureKind¶
- class postproject.RepresentationAddedEvent(asset_id: 'AssetId', representation_id: 'RepresentationId')¶
Bases:
object- representation_id: RepresentationId¶
- class postproject.RepresentationAvailability(*values)¶
Bases:
EnumAggregate availability of a complete representation.
- AMBIGUOUS = 'ambiguous'¶
- ERROR = 'error'¶
- OFFLINE = 'offline'¶
- ONLINE = 'online'¶
- PARTIAL = 'partial'¶
- class postproject.RepresentationId(value: UUID)¶
Bases:
_TypedIdStable identity of one usable asset representation.
- class postproject.RepresentationKind(*values)¶
Bases:
EnumSemantic role of an asset representation.
- DERIVED = 'derived'¶
- OPTIMIZED = 'optimized'¶
- ORIGINAL = 'original'¶
- PROXY = 'proxy'¶
- class postproject.RepresentationMember(resource_id: 'ResourceId', role: 'str | None', required: 'bool')¶
Bases:
object- required: bool¶
- resource_id: ResourceId¶
- role: str | None¶
- class postproject.RepresentationResolution(representation_id: 'RepresentationId', availability: 'RepresentationAvailability', resources: 'tuple[ResourceResolution, ...]', issues: 'tuple[AvailabilityIssue, ...]')¶
Bases:
object- availability: RepresentationAvailability¶
- issues: tuple[AvailabilityIssue, ...]¶
- representation_id: RepresentationId¶
- resources: tuple[ResourceResolution, ...]¶
- class postproject.RepresentationResourceAddedEvent(representation_id: 'RepresentationId', resource_id: 'ResourceId', structural_position: 'int')¶
Bases:
object- representation_id: RepresentationId¶
- resource_id: ResourceId¶
- structural_position: int¶
- class postproject.ResolutionCandidate(uri: 'str', confidence_basis_points: 'int', evidence: 'tuple[ResolutionEvidence, ...]')¶
Bases:
object- confidence_basis_points: int¶
- evidence: tuple[ResolutionEvidence, ...]¶
- uri: str¶
- class postproject.ResolutionEvidence(kind: 'EvidenceKind', detail: 'str | None' = None)¶
Bases:
object- detail: str | None¶
- kind: EvidenceKind¶
- class postproject.Resource(id: 'ResourceId', file_size: 'int | None', modified_at_unix_micros: 'int | None', fingerprints: 'tuple[Fingerprint, ...]', locators: 'tuple[Locator, ...]')¶
Bases:
object- file_size: int | None¶
- fingerprints: tuple[Fingerprint, ...]¶
- id: ResourceId¶
- modified_at_unix_micros: int | None¶
- class postproject.ResourceAddedEvent(resource_id: 'ResourceId')¶
Bases:
object- resource_id: ResourceId¶
- class postproject.ResourceId(value: UUID)¶
Bases:
_TypedIdStable identity of one storage resource.
- class postproject.ResourceResolution(resource_id: 'ResourceId', state: 'ResourceResolutionState', candidates: 'tuple[ResolutionCandidate, ...]', evidence: 'tuple[ResolutionEvidence, ...]')¶
Bases:
object- candidates: tuple[ResolutionCandidate, ...]¶
- evidence: tuple[ResolutionEvidence, ...]¶
- resource_id: ResourceId¶
- state: ResourceResolutionState¶
- class postproject.ResourceResolutionState(*values)¶
Bases:
EnumOutcome of resolving one storage resource.
- AMBIGUOUS = 'ambiguous'¶
- ERROR = 'error'¶
- OFFLINE = 'offline'¶
- ONLINE_AT_KNOWN_LOCATOR = 'online_at_known_locator'¶
- RESOLVED_EXACT = 'resolved_exact'¶
- RESOLVED_PROBABLE = 'resolved_probable'¶
- class postproject.Revision(id: RevisionId, sequence: int, transaction_id: TransactionId, committed_at_unix_micros: int, origin: OriginIdentity | None, message: str | None)¶
Bases:
objectOne committed production mutation transaction.
- committed_at_unix_micros: int¶
- id: RevisionId¶
- message: str | None¶
- origin: OriginIdentity | None¶
- sequence: int¶
- transaction_id: TransactionId¶
- class postproject.RevisionContext(origin: OriginIdentity | None = None, message: str | None = None)¶
Bases:
objectOptional context applied to a transaction’s future revision.
- message: str | None¶
- origin: OriginIdentity | None¶
- class postproject.RevisionEvent(position: int, payload: AssetImportedEvent | RepresentationAddedEvent | ResourceAddedEvent | RepresentationResourceAddedEvent | LocatorAddedEvent | LocatorRetiredEvent | MediaRootAddedEvent | MediaRootEnabledChangedEvent | MediaRootRemovedEvent | ExternalIdentifierAddedEvent | ExternalIdentifierRemovedEvent | MetadataAddedOrReplacedEvent | MetadataRemovedEvent | ActivityCreatedEvent | ActivityInputAddedEvent | ActivityOutputAddedEvent)¶
Bases:
objectOne ordered semantic event within a revision.
- payload: AssetImportedEvent | RepresentationAddedEvent | ResourceAddedEvent | RepresentationResourceAddedEvent | LocatorAddedEvent | LocatorRetiredEvent | MediaRootAddedEvent | MediaRootEnabledChangedEvent | MediaRootRemovedEvent | ExternalIdentifierAddedEvent | ExternalIdentifierRemovedEvent | MetadataAddedOrReplacedEvent | MetadataRemovedEvent | ActivityCreatedEvent | ActivityInputAddedEvent | ActivityOutputAddedEvent¶
- position: int¶
- class postproject.RevisionId(value: UUID)¶
Bases:
_TypedIdStable identity of one committed revision.
- exception postproject.StorageError(code: int, message: str)¶
Bases:
PostProjectErrorPersistent production data could not be read or written safely.
- class postproject.ToolIdentity(name: 'str', version: 'str | None' = None, uri: 'str | None' = None)¶
Bases:
object- name: str¶
- uri: str | None¶
- version: str | None¶
- class postproject.Transaction(native: NativeLibrary, handle: _Pointer[NativeTransaction])¶
Bases:
objectA caller-serialized transaction with context-manager semantics.
- add_external_identifier(target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId, identifier: ExternalIdentifier) None¶
Stage an external identifier attachment.
- add_image_sequence_representation(asset_id: AssetId, kind: RepresentationKind, source: ImageSequenceInput) RepresentationId¶
Stage one compact image-sequence representation.
- add_media_root(name: str, label: str | None = None, priority: int = 0) MediaRootId¶
Stage a portable logical root used for resource discovery.
- add_metadata(target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId, property: MetadataProperty, value: MetadataString | MetadataLanguageString | MetadataI64 | MetadataU64 | MetadataDecimal | MetadataBool | MetadataTimestamp | MetadataUri | MetadataBytes | MetadataRational | MetadataList | MetadataStruct | MetadataReference) None¶
Stage one typed metadata assertion.
- add_ordered_parts_representation(asset_id: AssetId, kind: RepresentationKind, members: tuple[FileResourceInput, ...]) RepresentationId¶
Stage an ordered, fully required multi-file representation.
- add_package_representation(asset_id: AssetId, kind: RepresentationKind, members: tuple[FileResourceInput, ...]) RepresentationId¶
Stage a role-bearing package representation.
- add_single_file_representation(asset_id: AssetId, kind: RepresentationKind, path: str | PathLike[str]) RepresentationId¶
Stage one single-file representation for an existing asset.
- close() None¶
Release the handle, implicitly rolling back if still open.
- commit() None¶
Atomically persist every staged mutation.
- confirm_locator(resource_id: ResourceId, uri: str) None¶
Stage explicit confirmation of one resource candidate URI.
- create_activity(spec: ActivitySpec) ActivityId¶
Stage one complete provenance activity.
- import_media(path: str | PathLike[str], display_name: str | None = None) AssetId¶
Prepare and stage one original-media import.
- remove_external_identifier(target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId, identifier: ExternalIdentifier) None¶
Stage removal of one exact external identifier attachment.
- remove_media_root(root_id: MediaRootId) None¶
Stage removal of one resolver root.
- remove_metadata_property(target: ProductionId | AssetId | RepresentationId | ResourceId | ActivityId, property: MetadataProperty) None¶
Stage removal of every assertion for one target and property.
- rollback() None¶
Discard every staged mutation.
- set_media_root_enabled(root_id: MediaRootId, enabled: bool) None¶
Stage a resolver root’s enabled state.
- set_revision_context(context: RevisionContext) None¶
Set optional origin and message fields for the future revision.
- class postproject.TransactionId(value: UUID)¶
Bases:
_TypedIdStable identity of the transaction that produced a revision.
- exception postproject.UnsupportedError(code: int, message: str)¶
Bases:
PostProjectErrorThe requested operation is not supported by the current ABI.