Register Platform Provider Version
Register a first-party provider version backed by a wheel.
Called by provider release CI after publishing a wheel to PyPI.
Authenticates against the Pragmatiks Console Clerk realm and
accepts only ConsoleMachine M2M tokens. The payload must target
platform/<name>; customer provider registration remains on the
customer-realm POST /provider-versions route.
Args: body: Wheel registration payload. machine: Authenticated ConsoleMachine performing the release. engine: Provider engine for registration persistence.
Returns: Persisted PUBLISHED ProviderVersion.
Raises: HTTPException: 403 when the payload targets a non-platform namespace; 422 when required metadata is missing.
Documentation Index
Fetch the complete documentation index at: https://docs.pragmatiks.io/llms.txt
Use this file to discover all available pages before exploring further.
Body
Request body for the wheel-based provider publish route.
Wheel-based publishing skips the in-API build step entirely: the
publisher builds the wheel, runs schema extraction client-side,
uploads the wheel to any HTTPS-reachable registry, then posts this
payload to the API. The API persists a :class:ProviderVersion
row pointing at the wheel and surfaces the schemas to dependents.
Attributes:
organization_id: Legacy organization id of the publishing
tenant. Current SDKs send a canonical name instead.
name: Canonical provider name ("org/name" or
"platform/name"). Legacy clients may send only the
provider short name together with organization_id.
version: Semantic version string (e.g. 1.0.0).
wheel_url: HTTPS URL of the uploaded wheel. Any registry is
accepted (PyPI, GitLab Package Registry, GCP Artifact
Registry, private servers, …) as long as the URL ends in
.whl and is reachable from the runtime container. The
router normalises this to a canonical https:// form.
sha256: Optional wheel digest supplied by current SDKs. When
present, the API verifies the wheel bytes before persisting
and stores the digest for runtime install verification.
package_name: Optional importable package name inside the wheel.
Current SDKs omit this; runtimes can infer common wheel
layouts, and future callers should send it explicitly.
schemas: Current SDK resource-schema map keyed by resource type.
metadata: Current SDK catalog display metadata for first publish
and platform provider updates.
config_schema: Legacy JSON Schema for the provider's top-level config
block, extracted client-side. None when the provider
exposes no top-level config.
outputs_schema: JSON Schema for the provider's outputs block,
extracted client-side. None when the provider exposes
no outputs.
resource_schemas: Per-resource schema map keyed by resource type
name. Empty when the provider exposes no resource types.
changelog: Optional release notes for this version.
entrypoint: Optional override of the runtime entrypoint command.
None preserves the default
python -m pragma_runtime.entrypoint.
1 - 2001^[0-9a-f]{64}$1 - 200Catalog display fields supplied when registering a provider version.
Response
Successful Response
A published version of a provider.
Identity fields (frozen): prefix: Namespace token of the owning provider. name: Provider short name this version belongs to. version: Semantic version string (e.g., "1.0.0").
Build metadata:
runtime_version: Pinned runtime version this version targets.
wheel_url: HTTPS URL of the published Python wheel. Sole
artifact pointer for wheel-published versions; see
:attr:WheelProviderVersionCreate.wheel_url for accepted
registry forms.
wheel_sha256: Optional SHA-256 digest of the wheel bytes,
verified at publish time and forwarded to runtime installs.
package_name: Optional importable Python package name inside a
wheel-published provider. When absent, the runtime attempts
to infer it from installed wheel metadata.
entrypoint: Optional override of the runtime entrypoint command
(e.g. ["python", "-m", "custom_runtime"]). None keeps
the default python -m pragma_runtime.entrypoint.
source_hash: SHA-256 of the source tarball on legacy rows.
Provider introspection: schemas: Resource type schemas extracted from the provider.
State (system-managed): status: Build/publish lifecycle status. published_at: Timestamp when version was published. error_message: Error details when build fails.
Slash-joined prefix/name canonical string of the owning provider.
Returns: Display form of the provider identity this version belongs to.
^[0-9a-f]{64}$1 - 200Build/publish status for a provider version.
building, published, failed, yanked