# step-onSuccess-unique Requires the `onSuccess` actions of the `step` object to be unique. | Arazzo | Compatibility | | --- | --- | | 1.x | ✅ | ## Design principles Each `onSuccess` action must be unique to avoid confusion or unexpected outcomes. A duplicate could indicate a mistake, or cause unwanted side effects if not detected by this rule. ## Configuration | Option | Type | Description | | --- | --- | --- | | severity | string | Possible values: `off`, `warn`, `error`. Default `off`. | An example configuration: ```yaml rules: step-onSuccess-unique: error ``` ## Examples Given the following configuration: ```yaml rules: step-onSuccess-unique: error ``` Example of a **correct** `onSuccess` list: ```yaml workflows: - workflowId: get-museum-hours description: This workflow demonstrates how to get the museum opening hours and buy tickets. steps: - stepId: get-museum-hours operationId: museum-api.getMuseumHours successCriteria: - condition: $statusCode == 200 onSuccess: - name: call-crud-events workflowId: events-crud type: goto - name: second-call-crud-events workflowId: events-crud type: goto - reference: $components.successActions.notify - reference: $components.successActions.report ``` ## Related rules - [step-onFailure-unique](/docs/cli/v1/rules/arazzo/step-onfailure-unique) ## Resources - [Rule source](https://github.com/Redocly/redocly-cli/blob/main/packages/core/src/rules/arazzo/step-onSuccess-unique.ts)