Publish a Policy
Publishes a policy to a specific lifecycle stage. Policies follow a promotion path:DRAFT -> PILOT -> PRODUCTION. Use staged rollout to validate policies with a subset of recipients before enforcing across the full catalog.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
dockId | string | The dock ID |
policyId | string | The policy ID |
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
stage | string | Optional | Target stage: sandbox, pilot, or production. Defaults to the next stage in the lifecycle |
scheduledEnforceDate | string | Optional | ISO 8601 date when the policy should begin enforcement |
Example: Mortgagee Policy — Pilot
Validate the passphrase + mTLS policy with a subset of mortgagees before full rollout:Example: Mortgagee Policy — Production
After pilot validation, promote to production:Example: Auditor Policy — Scheduled Enforcement
Schedule the auditor’s time-boxed policy to activate on the engagement start date:Response
Lifecycle Stages
| Stage | Description | Typical Use |
|---|---|---|
DRAFT | Policy is being authored and tested. Not enforced. | Initial recipe creation |
PILOT | Active for a subset of recipients for validation. | Test with 5-10 mortgagees |
PRODUCTION | Fully enforced for all assigned recipients. | Live access control |
Error Handling
| Status | Condition |
|---|---|
400 | Invalid stage value or policy cannot be promoted to the requested stage |
400 | scheduledEnforceDate is in the past |
401 | Missing or invalid API key |
404 | Policy or dock not found |
You can skip stages by explicitly specifying the
stage parameter, but it is recommended to follow the full promotion path. Run a simulation before publishing to identify non-compliant recipients. For auditor policies with auto_expire: true, the time window in the recipe controls when access ends — no manual revocation is needed.