# Get started with In-App Experiences on Unity

Pause, resume, and control display timing for In-App Experiences.

In-App Experiences are automatically enabled when you integrate the Airship SDK. Use these methods to control when and how they are displayed.

## Pausing and Resuming Display

You can pause and resume In-App Experiences to control when they are displayed to users.

```csharp
// Pause in-app experiences
Airship.Shared.inApp.SetPaused(true);

// Resume in-app experiences
Airship.Shared.inApp.SetPaused(false);

// Check if paused
bool isPaused = Airship.Shared.inApp.IsPaused();
```


### Auto-Pause on Launch

You can configure the SDK to automatically pause In-App Experiences on launch by setting `autoPauseInAppAutomationOnLaunch` in your `TakeOff` config. This is useful if you want to defer showing In-App Experiences until after onboarding or other critical app flows.

```csharp
using AirshipSDK;

Airship.Shared.TakeOff(new AirshipConfig() {
    @default = new ConfigEnvironment() {
        appKey = "<APP_KEY>",
        appSecret = "<APP_SECRET>",
    },
    autoPauseInAppAutomationOnLaunch = true,
});
```


See [Advanced Configuration](https://www.airship.com/docs/developer/sdk-integration/unity/installation/advanced-configuration/) for complete `TakeOff` configuration options.

When you're ready to display In-App Experiences, call `SetPaused(false)`.

## Display Interval

Control the minimum time between In-App Experience displays to avoid overwhelming users. `SetDisplayInterval` is asynchronous, so run it as a coroutine.

```csharp
// Set the display interval to 5 seconds
StartCoroutine(Airship.Shared.inApp.SetDisplayInterval(TimeSpan.FromSeconds(5)));

// Get the current display interval
TimeSpan interval = Airship.Shared.inApp.GetDisplayInterval();
```


The display interval is the minimum time that must pass between displaying In-App Experiences.
