<!--
{
  "availability" : [
    "iOS: 12.0.0 -",
    "iPadOS: 12.0.0 -",
    "macCatalyst: 12.0.0 -",
    "macOS: 10.14.0 -",
    "tvOS: 12.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 5.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Network",
  "identifier" : "/documentation/Network/NWPath",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Network"
    ],
    "preciseIdentifier" : "s:7Network6NWPathV"
  },
  "title" : "NWPath"
}
-->

# NWPath

An object that contains information about the properties of the network that a connection uses, or that are available to your app.

```
struct NWPath
```

## Topics

### Checking Path Availability

[`status`](/documentation/Network/NWPath/status-swift.property)

A status indicating whether a path can be used by connections.

[`NWPath.Status`](/documentation/Network/NWPath/Status-swift.enum)

Status values indicating whether a path can be used by connections.

### Inspecting Interfaces

[`usesInterfaceType(_:)`](/documentation/Network/NWPath/usesInterfaceType(_:))

Checks if connections using the path may send traffic over a specific interface type.

[`availableInterfaces`](/documentation/Network/NWPath/availableInterfaces)

A list of all interfaces available to the path, in order of preference.

[`gateways`](/documentation/Network/NWPath/gateways)

A list of gateways configured on the interfaces available to a path.

### Checking Path Capabilities

[`supportsIPv4`](/documentation/Network/NWPath/supportsIPv4)

A Boolean indicating whether the path can route IPv4 traffic.

[`supportsIPv6`](/documentation/Network/NWPath/supportsIPv6)

A Boolean indicating whether the path can route IPv6 traffic.

[`supportsDNS`](/documentation/Network/NWPath/supportsDNS)

A Boolean indicating whether the path has a DNS server configured.

[`isConstrained`](/documentation/Network/NWPath/isConstrained)

A Boolean indicating whether the path uses an interface in Low Data Mode.

[`isExpensive`](/documentation/Network/NWPath/isExpensive)

A Boolean indicating whether the path uses an interface that is considered expensive, such as Cellular or a Personal Hotspot.

### Inspecting Connected Paths

[`localEndpoint`](/documentation/Network/NWPath/localEndpoint)

The local endpoint in use by a connection’s network path.

[`remoteEndpoint`](/documentation/Network/NWPath/remoteEndpoint)

The remote endpoint in use by a connection’s network path.

### Comparing Paths



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)