Skip to navigation

Ensure question set (config-as-code converge)

Idempotently converge a repo-defined question set. Identity is the slug within the organization. A hash-only probe skips the payload in the steady state (a miss is a normal 200 definitionRequired, not an error); a full request creates the set, or appends a draft version when the questions, input mapping or model differ. Set dryRun to plan without writing, onConflict: “overwrite” to converge over dashboard or API edits, expectedRemoteHash to bind an apply to its dry run, and release: “publish” to publish the latest version. Ensure never deletes a set or a version.

Authentication

AuthorizationBearer
API key or Clerk session token

Request

This endpoint expects an object.
slugstringRequiredformat: "^[a-z0-9][a-z0-9_-]{0,63}$"

Identity, unique in the organization: lowercase letters, digits, - and _, up to 64.

contentHashstringOptionalformat: "^[0-9a-f]{64}$"
definitionobjectOptional
dryRunbooleanOptional
expectedRemoteHashstringOptionalformat: "^[0-9a-f]{64}$"
onConflictenumOptional
Allowed values:
releaseenumOptional
Allowed values:

Response

Converge result: unchanged | created | updated | definitionRequired (hash miss; retry with the full definition) | plan (dryRun)

object
OR
object
OR
object

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
422
Unprocessable Entity Error
500
Internal Server Error