Endpoints
Publish Review
An attested human approve or reject before private caption production. Reviewer identity is host-configured and cannot be set by callers.
Read host-produced intake receipts with their full decision lineage.
studio.local-runtime-publish-review-intakes.v1
Response Envelope
responsecommandIdstringAccepted command identity.
runtimeIdstringRuntime identity for this journal.
journalHeadnumberHighest journal sequence written.
intakesarrayHost-produced intake receipts with decision lineage.
curl http://127.0.0.1:4312/v1/runtimes/$RUNTIME_ID/publish-review-intakes \
-H "Authorization: Bearer $TOKEN"{
"schema": "studio.local-runtime-publish-review-intakes.v1",
"commandId": "runtime-start:87a88ad697c53b8134783135c64c45c8c362bf9f682e121a720eb7867b2fcd2e",
"runtimeId": "runtime:da4ff907-4240-42c7-8f14-deb6e2ce236a",
"journalHead": 67,
"intakes": [
{
"intakeId": "publish-review-intake:d2e6ca337389d34b267c563a523eccede7e26960a50ac140a25cd8ba4ebac588",
"artifactId": "artifact:af9c320c97bd32daaa8a09cd4bc94b0305efa6891361fc566f63a5a188c9ecda",
"receiptId": "publish-review-intake-receipt:20cad736985710c6a9beb195a38a602bf57f8ae58bd63033df248d28f5932504",
"receiptContentId": "sha256:0befb1c0a44ac9726e4bccfb8a8ddaa542806e9f99fe6fb5d23389fca3fd5498",
"integrity": "stored_intake_and_verified_study_readiness",
"producer": "host_publish_review_intake_v1",
"readiness": {
"artifactId": "artifact:c964be13cb908aa2131abdb9277ab09d8ec81a3434c07f8e7364c6024d2ad734",
"readinessId": "study-readiness-v4:765321c1bdd126182fd2aa3be49ad556686089771d486c0febb25d0abf6f5261",
"receiptContentId": "sha256:4915eb74796dabdb3784df4f6ccf06c7cbc24599560ff88f1c9e1673ba16004c",
"receiptId": "study-readiness-receipt-v4:3e8500b787ea6bb5f1d1acf049ef5486d8ad7e433762c23cfb946eb8d2bccc28"
},
"outcome": "queued",
"reasonCodes": []
}
]
}Read reviews, or record one attested local approve or reject decision.
studio.local-runtime-publish-review-decisions.v1
Decision Request
application/jsonintakeobjectrequiredExact intake identity: intakeId, artifactId, receiptId, receiptContentId.
reviewer{ id, attestation }requiredMust name the host-configured reviewer id and repeat the exact attestation string.
decision{ outcome, reasonCodes, note }requiredoutcome is "approve_for_caption_production" or "reject_with_reasons", with closed reason codes.
Response Envelope
responsecommandIdstringAccepted command identity.
runtimeIdstringRuntime identity for this journal.
journalHeadnumberHighest journal sequence written.
reviewsarrayAttested review decisions for this runtime; empty until one is recorded.
curl http://127.0.0.1:4312/v1/runtimes/$RUNTIME_ID/publish-review-decisions \
-H "Authorization: Bearer $TOKEN"{
"schema": "studio.local-runtime-publish-review-decisions.v1",
"commandId": "runtime-start:87a88ad697c53b8134783135c64c45c8c362bf9f682e121a720eb7867b2fcd2e",
"runtimeId": "runtime:da4ff907-4240-42c7-8f14-deb6e2ce236a",
"journalHead": 67,
"reviewer": {
"id": "reviewer:local-operator",
"label": "Local review operator",
"decisionAttestation": "I attest that I am the named reviewer and made this review decision.",
"revocationAttestation": "I attest that I am the named reviewer and made this revocation decision."
},
"reviews": []
}curl -X POST http://127.0.0.1:4312/v1/runtimes/$RUNTIME_ID/publish-review-decisions \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"intake": {
"intakeId": "publish-review-intake:d2e6ca337389d34b267c563a523eccede7e26960a50ac140a25cd8ba4ebac588",
"artifactId": "artifact:af9c320c97bd32daaa8a09cd4bc94b0305efa6891361fc566f63a5a188c9ecda",
"receiptId": "publish-review-intake-receipt:20cad736985710c6a9beb195a38a602bf57f8ae58bd63033df248d28f5932504",
"receiptContentId": "sha256:0befb1c0a44ac9726e4bccfb8a8ddaa542806e9f99fe6fb5d23389fca3fd5498"
},
"reviewer": {
"id": "reviewer:local-operator",
"attestation": "I attest that I am the named reviewer and made this review decision."
},
"decision": {
"outcome": "approve_for_caption_production",
"reasonCodes": [
"reviewer_attested_caption_production_may_proceed"
],
"note": null
}
}'{
"schema": "studio.local-runtime-publish-review-decisions.v1",
"commandId": "runtime-start:87a88ad697c53b8134783135c64c45c8c362bf9f682e121a720eb7867b2fcd2e",
"runtimeId": "runtime:da4ff907-4240-42c7-8f14-deb6e2ce236a",
"journalHead": 70,
"reviewer": {
"id": "reviewer:local-operator",
"label": "Local review operator",
"decisionAttestation": "I attest that I am the named reviewer and made this review decision.",
"revocationAttestation": "I attest that I am the named reviewer and made this revocation decision."
},
"reviews": [
{
"reviewId": "publish-review:55cb99708b008092cb1b8e9675468eb869016ad859cefb9397457e98c0d5cf08",
"artifactId": "artifact:e986d94e686a223f7c269d49d68188b45b8cba746f38f293189fa55803872e54",
"receiptId": "publish-review-decision-receipt:088b53b0a71ff278d4a5c5d349645f3c7d470f8c61f94151b3aa6ccb8cb8f1ee",
"receiptContentId": "sha256:85ad2898c419684dd4e49600b5ce8565e4c18bccc6e748e36fcd5e4ffe1205b3",
"integrity": "stored_review_and_verified_queued_intake",
"producer": "host_publish_review_v1",
"intake": {
"artifactId": "artifact:af9c320c97bd32daaa8a09cd4bc94b0305efa6891361fc566f63a5a188c9ecda",
"intakeId": "publish-review-intake:d2e6ca337389d34b267c563a523eccede7e26960a50ac140a25cd8ba4ebac588",
"receiptContentId": "sha256:0befb1c0a44ac9726e4bccfb8a8ddaa542806e9f99fe6fb5d23389fca3fd5498",
"receiptId": "publish-review-intake-receipt:20cad736985710c6a9beb195a38a602bf57f8ae58bd63033df248d28f5932504"
},
"readiness": {
"artifactId": "artifact:c964be13cb908aa2131abdb9277ab09d8ec81a3434c07f8e7364c6024d2ad734",
"readinessId": "study-readiness-v4:765321c1bdd126182fd2aa3be49ad556686089771d486c0febb25d0abf6f5261",
"receiptContentId": "sha256:4915eb74796dabdb3784df4f6ccf06c7cbc24599560ff88f1c9e1673ba16004c",
"receiptId": "study-readiness-receipt-v4:3e8500b787ea6bb5f1d1acf049ef5486d8ad7e433762c23cfb946eb8d2bccc28"
},
"reviewer": {
"id": "reviewer:local-operator",
"label": "Local review operator",
"attestation": "I attest that I am the named reviewer and made this review decision."
},
"outcome": "approve_for_caption_production",
"reasonCodes": [
"reviewer_attested_caption_production_may_proceed"
],
"note": null,
"state": "approved_for_caption_production",
"revocation": null
}
]
}Revoke a prior approval. Rejection and revocation stay visible forever.
studio.local-runtime-publish-review-decisions.v1
Revocation Request
application/jsonapprovalobjectrequiredExact approval identity: reviewId, artifactId, receiptId, receiptContentId.
reviewer{ id, attestation }requiredMust name the host-configured reviewer id and repeat the exact revocation attestation string.
revocation{ reasonCodes, note }requiredClosed revocation reason codes; note may be null.
curl -X POST http://127.0.0.1:4312/v1/runtimes/$RUNTIME_ID/publish-review-revocations \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"approval": {
"reviewId": "publish-review:fd270635f13ca8a82f9ab9858ffdf2d5e8e3fabbbfbdff196f589a4aeb992713",
"artifactId": "artifact:d3f53f5a25444737836e416ca86683594d1f0ea460facda6d52e60c1c3c01eca",
"receiptId": "publish-review-decision-receipt:436d61ef564f9b2897bb8a08813c619ffa4cd5cf1af905e2040ad42e8186dd1b",
"receiptContentId": "sha256:fc69cc44bb855d751f372be4af19a24195e50e0836659ef6747358944f8f5d39"
},
"reviewer": {
"id": "reviewer:local-operator",
"attestation": "I attest that I am the named reviewer and made this revocation decision."
},
"revocation": {
"reasonCodes": [
"approval_entered_in_error"
],
"note": null
}
}'{
"schema": "studio.local-runtime-publish-review-decisions.v1",
"commandId": "runtime-start:87a88ad697c53b8134783135c64c45c8c362bf9f682e121a720eb7867b2fcd2e",
"runtimeId": "runtime:da4ff907-4240-42c7-8f14-deb6e2ce236a",
"journalHead": 73,
"reviewer": {
"id": "reviewer:local-operator",
"label": "Local review operator",
"decisionAttestation": "I attest that I am the named reviewer and made this review decision.",
"revocationAttestation": "I attest that I am the named reviewer and made this revocation decision."
},
"reviews": [
{
"reviewId": "publish-review:fd270635f13ca8a82f9ab9858ffdf2d5e8e3fabbbfbdff196f589a4aeb992713",
"artifactId": "artifact:d3f53f5a25444737836e416ca86683594d1f0ea460facda6d52e60c1c3c01eca",
"receiptId": "publish-review-decision-receipt:436d61ef564f9b2897bb8a08813c619ffa4cd5cf1af905e2040ad42e8186dd1b",
"receiptContentId": "sha256:fc69cc44bb855d751f372be4af19a24195e50e0836659ef6747358944f8f5d39",
"integrity": "stored_review_and_verified_queued_intake",
"producer": "host_publish_review_v1",
"intake": {
"artifactId": "artifact:ed94b3fe33b96cc861a933ef063609b05a591674b3c34b9e32dae01e6282148c",
"intakeId": "publish-review-intake:5b4881c24982242235ebae936fa52e67cb7cffaf85608f7ca8cb977ad5eb9a34",
"receiptContentId": "sha256:b7c06fdfb579970f103f25c69bb9af3126c0afc33799b41c06fabc2d82794d8a",
"receiptId": "publish-review-intake-receipt:317b9772f3690d88a00989fb6a4e11ef9b27e503864548913e502d4fb96b8a9f"
},
"readiness": {
"artifactId": "artifact:baa2174b4f5ea3c0b18a9803cb92d7f25c52c620c80f97e0b7de21a73adff24b",
"readinessId": "study-readiness-v4:a28785c58ccf5aaae1c4a106ef8600abbd8e190d4ad69616ecaa43d4162f9f25",
"receiptContentId": "sha256:5b201a2eb6abd2c2c2f919c835de58eaa67cddb061ac3b9a5d82fdbd05d532ce",
"receiptId": "study-readiness-receipt-v4:2f6f3a01671990f33a0bf3038d078c3242ed5a6352190fa1d6752f93b81425bd"
},
"reviewer": {
"id": "reviewer:local-operator",
"label": "Local review operator",
"attestation": "I attest that I am the named reviewer and made this review decision."
},
"outcome": "approve_for_caption_production",
"reasonCodes": [
"reviewer_attested_caption_production_may_proceed"
],
"note": null,
"state": "approval_revoked",
"revocation": {
"revocationId": "publish-review-revocation:5fca0cc20ac2fdf9b02f626b1cafd561921a4906d635010a566999cb5ed84444",
"artifactId": "artifact:bbd81bfd3e9572e56606312806a66c91d8d26fe0a109fe3fc43305daa1899825",
"receiptId": "publish-review-revocation-receipt:812d53639b5b8fa3f632070a35d265311d0025c77e88f4e9276bab6c84f2b172",
"receiptContentId": "sha256:b06ad71ea7d10a32d20fe0ac3c79263c464918b60c46a470d00b814232f1bf91",
"integrity": "stored_revocation_and_verified_approval",
"producer": "host_publish_review_v1",
"reviewer": {
"id": "reviewer:local-operator",
"label": "Local review operator",
"attestation": "I attest that I am the named reviewer and made this revocation decision."
},
"reasonCodes": [
"approval_entered_in_error"
],
"note": null
}
}
]
}