Classification Requirements

Replace the classification requirements of a workflow step

PUT/workflow-steps/{workflow_step_id}/classification-requirements

Makes the step's requirements exactly the items you send, in that order. An item with an id updates that requirement, one without creates it, and requirements you leave out are deleted and can't be restored. Send up to 100 items; an id not on the step returns 422, and nothing changes if any item is invalid. dry_run shows the result without saving. It emits no webhook. To change one requirement and keep the rest, use PATCH /workflow-steps/{workflow_step_id}/classification-requirements/{id}.

Path parameters

  • workflow_step_idstring (uuid)Required#

    The workflow step the requirements belong to.

Query parameters

  • dry_runboolean#

    Validate and run the call without committing it, returning what the real call would return with meta.dry_run set.

Request body

application/json, required

{
  "items": [
    {
      "id": "7c8d9e0f-1a2b-4c3d-8e9f-0a1b2c3d4e5f",
      "enabled": false
    },
    {
      "classification_ids": [
        21
      ],
      "label": "Professional investor"
    }
  ]
}

Responses

200

The requirements, in request order.

ClassificationRequirement[]
{
  "data": [
    {
      "id": "9a9d1c5e-4f2b-4c8e-9a7d-2f1e6b3c4d5a",
      "workflow_step_id": "9a9d1c5e-4f2b-4c8e-9a7d-2f1e6b3c4d5a",
      "classification_ids": [
        1
      ],
      "label": "string",
      "error_message": "string",
      "enabled": true,
      "created_at": "2026-06-12T10:00:00+00:00",
      "updated_at": "2026-06-12T10:00:00+00:00"
    }
  ]
}
401

Authentication failed. error.code is one of invalid_token, expired, revoked.

Error
403

Authorization failed. error.code is one of org_disabled, ip_blocked, missing_scope, scope_disabled, user_disabled.

Error
404

Resource not found (error.code = not_found).

Error
422

The request can't be processed (HTTP 422): validation_failed with one ErrorDetail per problem, or a code documented on the operation.

Error
429

Rate limit exceeded (error.code = rate_limited).

Error

Examples

curl -X PUT https://your-org-domain/kong/core/api/v2/workflow-steps/{workflow_step_id}/classification-requirements\
  -H "Authorization: Bearer $HELM_API_KEY"\
  -H "Content-Type: application/json"\
  -d '{
  "items": [
    {
      "id": "7c8d9e0f-1a2b-4c3d-8e9f-0a1b2c3d4e5f",
      "enabled": false
    },
    {
      "classification_ids": [
        21
      ],
      "label": "Professional investor"
    }
  ]
}'