The Case Assignment Rule continues to update the Case Owner (visible as "Owner (Assignment)" in field history) even when there are no active assignment rules in the org, or when all assignment rules have been deleted. This behavior occurs specifically when cases are created or updated through the REST API — not through Apex classes or the Salesforce UI.
The Assignment Rule Header (Sforce-Auto-Assign) is a REST API request header that controls whether assignment rules execute when creating or updating Accounts, Cases, or Leads. If this header is not present in a REST API request, it defaults to true, causing assignment rules to execute even when none are active.
Important: Any API request where the Assignment Rule Header is set to invoke will inherit that setting across all DML actions in the same transaction. This context takes precedence over DMLOptions. If set via UI, SOAP API, or REST API, it cannot be overridden by DMLOptions.
Real-World Example: A third-party integration creates cases via REST API without explicitly setting Sforce-Auto-Assign: false in the request headers. Even though all assignment rules are deactivated, the case is reassigned to the Default Case Owner because the header defaults to true.
This article explains why Case Assignment Rules may continue to execute even when deactivated or deleted, particularly when cases are created or updated via the REST API without explicitly setting the Sforce-Auto-Assign header.
Because there is an Assignment Rule present (even if not active), this is working as designed. It is loaded on entity insert and should not be evaluated as it is inactive. The system performs default assignments using the "Default Case Owner" as defined in Support Settings.
If the REST API is used and the Sforce-Auto-Assign header is not set, the header defaults to true. During the transaction of a Case update, if there is no Assignment Rule, the system sets the Assignment Rule Header to false.
However, if there is a recursive update to the same Case record in the same transaction, the AutoAssign value resets to true. This reset is not overridden during the recursive update, so AutoAssign remains true. Since no assignment rules are active, the case is reassigned to the Default Case Owner.
To prevent unexpected assignment when using REST API:
Sforce-Auto-Assign: false header in your REST API requests that create or update Cases.000395506

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.