@AuraEnabled Annotations for Continuations

Continuations use the @AuraEnabled annotation for Apex code. Here are the rules for usage.

  • @AuraEnabled(continuation=true)

    An Apex controller method that returns a continuation must be annotated with @AuraEnabled(continuation=true).

  • @AuraEnabled(continuation=true cacheable=true)

    To cache the result of a continuation action, set cacheable=true on the annotation for the Apex callback method.

    There’s a space, not a comma, between continuation=true cacheable=true.

It's best practice to set cacheable=true on all methods involved in the continuation chain, including the method that returns a Continuation object.

In this example, the Apex method that returns the continuation, startRequest(), and the callback, processResponse(), both contain cacheable=true in their @AuraEnabled annotation.

Here's a table that summarizes the behavior with different settings of the cacheable attribute in @AuraEnabled.

Method Returning Continuation Object Annotated with cacheable=trueCallback Method Annotated with cacheable=trueValid?Can be Called Using @wire?Is Action Response Cached on Client?
YesYesYesYesYes
YesNoNo (throws an exception)N/AN/A
NoYesYesNo (all methods must have cacheable=true)No
NoNoYesNoNo

See Also