Interface DurableConfig

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
DurableConfig.Jsii$Proxy

@Generated(value="jsii-pacmak/1.120.0 (build 192dc88)", date="2025-12-05T22:26:39.358Z") @Stability(Stable) public interface DurableConfig extends software.amazon.jsii.JsiiSerializable
Configuration for durable functions.

Lambda durable functions allow for long-running executions with persistent state.

Example:

 Function fn = Function.Builder.create(this, "MyFunction")
         .runtime(Runtime.NODEJS_24_X)
         .handler("index.handler")
         .code(Code.fromAsset(join(__dirname, "lambda-handler")))
         .durableConfig(DurableConfig.builder().executionTimeout(Duration.hours(1)).retentionPeriod(Duration.days(30)).build())
         .build();
 
  • Method Details

    • getExecutionTimeout

      @Stability(Stable) @NotNull Duration getExecutionTimeout()
      The amount of time that Lambda allows a durable function to run before stopping it.

      Must be between 1 and 31,622,400 seconds (366 days).

    • getRetentionPeriod

      @Stability(Stable) @Nullable default Duration getRetentionPeriod()
      The number of days after a durable execution is closed that Lambda retains its history.

      Must be between 1 and 90 days.

      The underlying configuration is expressed in whole numbers of days. Providing a Duration that does not represent a whole number of days will result in a runtime or deployment error.

      Default: Duration.days(14)

    • builder

      @Stability(Stable) static DurableConfig.Builder builder()
      Returns:
      a DurableConfig.Builder of DurableConfig