A is incorrect: While an in-flow 'Condition' action would achieve the desired logic, the flow would still trigger and consume API calls and run allocations before evaluating the condition and potentially terminating. This is less efficient than server-side filtering.
B is incorrect: The 'Select columns' property specifies which columns should be monitored for changes to trigger the flow. It does not allow for complex conditional logic based on specific values, only whether a selected column has changed.
C is correct: Applying an OData filter expression directly in the 'Filter rows' property of the Dataverse trigger is the most efficient method. This allows the Dataverse event engine to evaluate the condition server-side, preventing the flow from triggering at all if the criteria are not met, thereby conserving API limits and resources.
D is incorrect: Configuring 'Concurrency Control' limits how many instances of the flow can run simultaneously. It does not prevent the flow from triggering in the first place based on specific data conditions, thus it would not optimize API consumption in this scenario.