---
title: @react-native-community/netinfo
description: A cross-platform API that provides access to network information.
sourceCodeUrl: https://github.com/react-native-community/react-native-netinfo
packageName: @react-native-community/netinfo
platforms: ["android", "ios", "tvos", "web"]
inExpoGo: true
---
`@react-native-community/netinfo` allows you to get information about connection type and connection quality.
## Installation
## API
To import this library, use:
```js
```
If you want to grab information about the network connection just once, you can use:
```js
NetInfo.fetch().then(state => {
console.log('Connection type', state.type);
console.log('Is connected?', state.isConnected);
});
```
Or, if you'd rather subscribe to updates about the network state (which then allows you to run code/perform actions anytime the network state changes) use:
```js
const unsubscribe = NetInfo.addEventListener(state => {
console.log('Connection type', state.type);
console.log('Is connected?', state.isConnected);
});
// To unsubscribe to these update, just use:
unsubscribe();
```
## Accessing the SSID
To access the `ssid` property (available under `state.details.ssid`), there are a few additional configuration steps:
- Request location permissions with [`Location.requestForegroundPermissionsAsync()`](location.md#locationrequestforegroundpermissionsasync) or [`Location.requestBackgroundPermissionsAsync()`](location.md#locationrequestbackgroundpermissionsasync).
### iOS only
- Add the `com.apple.developer.networking.wifi-info` entitlement to your **app.json** under `ios.entitlements`:
```json app.json
"ios": {
"entitlements": {
"com.apple.developer.networking.wifi-info": true
}
}
```
- Check the **Access Wi-Fi Information** box in your app's App Identifier, [which can be found here](https://developer.apple.com/account/resources/identifiers/list).
- Rebuild your app with [`eas build --platform ios`](/build/setup/#4-run-a-build) or [`npx expo run:ios`](/more/expo-cli/#compiling).
## Learn more