Skip to content

API Overview

This page is a lookup map for the public SDK API. The Core API guides explain when and how to use each record type; this index points to the relevant declarations and runtime helpers.

Need Primary API Guide
Persist one external or source value @json_artifact, @csv_artifact, @parquet_artifact, and other Artifact decorators Artifacts
Declare reusable work and publish its real invocation @computation, computation_record, OclpRun.outputs_for() Computations and Executions
Record a quality or acceptance conclusion @evidence, evaluate_evidence Evidence
Package exact Artifacts ComputationArtifactSet, @artifact_set, assemble_artifact_set, artifact_set_input Artifact sets
Observe related real Executions @run, observe_run, OclpRun, active_run Runs
Bind code and persist records GitSource, ArtifactSource, ServiceSource, OpaqueSource, LocalArtifactPublisher Sources and publishing
Parse, digest, and validate portable records parse_record, canonical_json_bytes, record_digest, validation helpers Canonical records and validation

Core record models

The immutable Pydantic models live in oclp.models:

from oclp.models import (
    Artifact,
    ArtifactSet,
    Computation,
    Evidence,
    Event,
    Execution,
    RecordReference,
)

Their field semantics and conformance requirements are defined by the OCLP specification. Use the SDK declarations for ordinary application code; instantiate model objects directly when implementing a store, ingesting records, or performing a low-level integration.

Optional integrations

  • Dagster activates canonical OCLP declarations inside native Dagster assets.
  • MLflow mirrors OCLP observations for experiment tracking.
  • DuckDB catalog provides local record and Artifact-location storage.