Campaign Briefs / CLI
Revise icp rubric
Revise a brief ICP rubric from QA corrections on a canary sample. Pass the sample returned by get-icp-tuning-sample, operator corrections, and the current rubric. Returns { revisedRubric, rationale } without saving.
pipeline revise-icp-rubricBackend AI, consent requiredParameters
workspaceIdOptional · string- Optional workspace ID or slug. Required when this credential can access multiple workspaces and no workspace was configured on the client.
briefIdRequired · string- Campaign brief id.
sampleRequired · array- Sample rows from get-icp-tuning-sample.
correctionsRequired · array- Operator judgments: rowId plus verdict fit, unfit, or skip.
currentRubricRequired · object- The rubric to revise. Usually the rubric returned by get-icp-tuning-sample.
allowHostedAiOptional · boolean- Must be true when this operation uses Pipeline hosted inference.
pipeline revise-icp-rubric \
--brief-id "00000000-0000-4000-8000-000000000000" \
--sample {"rowId":"row_01"} \
--corrections {"rowId":"row_01","verdict":"fit"} \
--current-rubric-json '{"naturalLanguageCriteria":"Founder-led B2B software companies"}' \
--allow-hosted-aiFull input schema
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"minLength": 1,
"description": "Optional workspace ID or slug. Required when this credential can access multiple workspaces and no workspace was configured on the client."
},
"briefId": {
"type": "string",
"description": "Campaign brief id."
},
"sample": {
"type": "array",
"description": "Sample rows from get-icp-tuning-sample."
},
"corrections": {
"type": "array",
"description": "Operator judgments: rowId plus verdict fit, unfit, or skip."
},
"currentRubric": {
"type": "object",
"description": "The rubric to revise. Usually the rubric returned by get-icp-tuning-sample."
},
"allowHostedAi": {
"type": "boolean",
"description": "Must be true when this operation uses Pipeline hosted inference."
}
},
"required": [
"briefId",
"sample",
"corrections",
"currentRubric"
]
}