Publish one exact Artifact revision into another Scope
Memory publication is rejected until its complete family-owned state can be created atomically in the target Scope. Prompt publication is rejected because Prompt identities must be registered operation keys. Configure the target Scope through the Artifact Create and Replace APIs instead. Profile artifacts cannot be copied or published across Scopes, whether or not the target already has a Profile. Requests for these families return HTTP 422 with code artifact_publication_unsupported and details.family. Rejection creates no target Artifact or publication record; other supported families retain their existing behavior. Topic Memory publication requires scope.admin in both Scopes and atomically copies the exact revision with its retrieval indexes into a new target identity. Tags and direct Sources are not copied. Completed idempotent retries do not require embedding inference. Deliver a user-selected exact Artifact revision to an explicitly selected target Scope. Never infer latest, publish unrelated history, or treat a handoff preview as publication authority. The returned target artifact is independent; publication does not move Sources or authorize its execution.
Authorization
BearerAuth Bearer credential resolved to an opaque authenticated Principal by the Server deployment.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/artifact-publications" \ -H "Content-Type: application/json" \ -d '{ "source": { "scope_id": "string", "artifact": { "family": "string", "artifact_id": "string", "revision": 1 } }, "target_scope_id": "string", "idempotency_key": "string" }'{ "source": { "scope_id": "string", "artifact": { "family": "string", "artifact_id": "string", "revision": 1 } }, "target": { "scope_id": "string", "artifact": { "family": "string", "artifact_id": "string", "revision": 1 } }, "content_digest": "string"}Create an independent Scope boundary POST
Create a Scope only for a user-established independent result boundary with known Parent and references. Ordinary recall, search, or saving does not create a Scope. Never invent Scope identities from a directory or branch. Creation alone does not bind the current host session.
Get one Scope descriptor GET
Inspect a selected Scope by its exact identifier for navigation or configuration. This does not select or bind the current session, retrieve its Memory, or authorize cross-Scope access.

