---
title: "run(_:session:arConfiguration:)"
framework: realitykit
role: symbol
role_heading: Instance Method
path: "realitykit/spatialtrackingsession/run(_:session:arconfiguration:)"
---

# run(_:session:arConfiguration:)

Runs the spatial tracking session with a spatial tracking configuration, an AR session, and an AR configuration.

## Declaration

```swift
@discardableResult @MainActor final func run(_ configuration: SpatialTrackingSession.Configuration, session: ARSession, arConfiguration: ARConfiguration) async -> SpatialTrackingSession.UnavailableCapabilities?
```

## Parameters

- `configuration`: An object that configures the AR data that RealityKit uses in the spatial tracking session.
- `session`: An object that coordinates the major processes that ARKit performs on your behalf to create an augmented reality experience.
- `arConfiguration`: An object that defines motion and scene tracking behaviors for the session.

## Return Value

Return Value The unavailable capabilities based on the hardware and the user authorization.

## Discussion

Discussion You manage and run the ARSession for the SpatialTrackingSession.
