> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flowx.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# React Native SDK

> Migrate the FlowX React Native renderer SDK from 5.9.x to 6.0.0.

## React Native SDK migration guide

6.0 moves the validated React Native target to Expo SDK 57 and aligns the SDK's names with the iOS and Android SDKs. Update your app to the new configuration and prop names. The Android Material 3 date picker opt-in is removed.

### Prerequisites and version range

The peer dependency floors are unchanged: `react-native` ≥ 0.83.0 and `react` ≥ 19.2.0. The validated target moves up one Expo SDK.

| Requirement | 5.9 | 6.0 |
| - | - | - |
| Validated target | Expo SDK 56, React Native 0.85.3 | **Expo SDK 57, React Native 0.86.3** |
| React | 19.2.3 (Expo SDK 56 pin) | 19.2.3 (Expo SDK 57 pin) |
| `react-native-blob-util` | ^0.24.9 | **^0.25.1** |
| `@react-native-community/datetimepicker` | Required peer | **No longer used** |

For an Expo project, align the project to Expo SDK 57, then reinstall the FlowX packages with `npx expo install`:

```bash theme={"dark"}
npx expo install expo@^57.0.0 --fix
```

For the full install command and the Expo SDK 57 reference versions, see the [React Native SDK reference](https://docs.flowx.ai/6.x/sdks/react-native-renderer.md).

### FlowX SDK changes

#### Renamed configuration options and props

Replace each 5.9 name with its 6.0 name. The 5.9 names still work in 6.0, but they are deprecated.

| 5.9 | 6.0 |
| - | - |
| `FlxConfig.baseURL`, `apiUrl` prop | `baseUrl` |
| `processApiPath` | `enginePath` (the leading slash is optional) |
| `staticAssetsPath` | `assetsBaseUrl` |
| `authToken` prop | `accessToken` |
| `customHeaders` | `additionalHttpHeaders` |
| `customLoader` | `customLoaderProvider` (same shape) |
| `customStepperHeader` | `customStepperHeaderProvider` (same component) |
| `configure({ locale, language })` | `FlowX.changeLocaleSettings(locale?, language?)` |
| `configure({ updateStateEnabled })` | `FlowX.setUpdateStateEnabled(enabled)` |
| `setAccessToken(token: string)` | `setAccessToken(token?: string \| null)`: `null`, `undefined` or `''` switches to anonymous access |
| `processUuid` prop | `processInstanceUuid` |
| `onClose(name?)` | `onDismissRequested(name?)` (same argument) |
| Custom component `input.actionsFn.<name>(params)` | `input.runAction(name, params?)` |
| Custom component `registerValidation` prop | `validate` |
| `getEnumeration(name, parentName?)` | `getEnumerationItems(name, parentName?)` |
| `getStaticAsset(key)` | `getMediaItemUrl(key)` |
| `getMediaItemURL(mediaItemId)` (async) | `getMediaItemUrl(key)` (sync, once the process has loaded its media) |
| `getSubstitutionTag(code)` | `getSubstitutionTagContent(key)` |

`baseUrl`, `enginePath` and `assetsBaseUrl` apply to `FlowX.configure` and to the process, UI Flow and chat renderers. `onDismissRequested` applies to `startProcess`, `continueProcess`, `startUiFlow` and the process and UI Flow renderers.

In 5.9 the content helpers came only from `@flowx/core-sdk/rn`. `@flowx/react-native-sdk` now exports them too, under their new names only (`getEnumerationItems`, `getMediaItemUrl`, `getSubstitutionTagContent`).

```diff theme={"dark"}
 FlowX.configure({
-  baseURL: 'https://api.example.com',
-  processApiPath: 'onboarding',
-  staticAssetsPath: 'https://media.example.com',
-  customHeaders: { 'x-tenant': 'acme' },
-  language: 'en',
-  locale: 'en-US',
+  baseUrl: 'https://api.example.com',
+  enginePath: 'onboarding',
+  assetsBaseUrl: 'https://media.example.com',
+  additionalHttpHeaders: { 'x-tenant': 'acme' },
   organizationId,
 })
+FlowX.changeLocaleSettings('en-US', 'en')
```

#### New custom component action: `runUploadAction`

Custom components get `input.runUploadAction(name, { uri, name, type }, params?)` to upload a file through an upload action.

`FlxCustomComponentData` requires `runAction` and `runUploadAction`. If your tests build a mock of it by hand, add both.

#### Android Material 3 date picker removed

The opt-in Material 3 date picker for `FlxDatePicker` on Android is removed, along with the `@react-native-community/datetimepicker` peer dependency.

* Remove `material3` from any `configureFlxUiToolkit` call.
* The `@react-native-community/datetimepicker` package is no longer needed by FlowX. Uninstall it if nothing else in your app uses it.
* Keep the `@flowx/react-native-ui-toolkit` Expo config plugin registered. It no longer changes `AppTheme` or sets `extra.flxUiToolkit.material3`. It now adds `fontScale` to the main activity's `android:configChanges` and declares the microphone permissions used by chat voice input. Run `npx expo prebuild` again after the upgrade.

#### Behavior changes

* A session with no usable access token now starts as anonymous instead of failing. In 5.9, a token that was `null`, `undefined` (never set) or an empty string (`''`) made the start throw `Call FlowX.setAccessToken(...) before starting a process.` In 6.0 all three values start an anonymous session, and a backend that requires a token answers `401`. If your token fetch can return `null`, `undefined` or `''`, check the value before you start a process; otherwise the failure only shows up later as a `401`.
* Error and warning messages name `baseUrl` and `assetsBaseUrl` instead of `baseURL` and `staticAssetsPath`. Update any host code that matches on their text.

## Related resources

> [card] [React Native SDK reference](https://docs.flowx.ai/6.x/sdks/react-native-renderer.md)
>
> React Native renderer SDK documentation

> [card] [Migration overview](https://docs.flowx.ai/release-notes/v6.x/v6.0.0-october-2026/migrating-from-v5.9-to-v6.0/migration-overview.md)
>
> Full 5.9.x → 6.0.0 container app upgrade guide


## Related topics

- [React Native SDK](https://docs.flowx.ai/6.x/sdks/react-native-renderer.md)
- [FlowX.AI 5.9.0 Release Notes](https://docs.flowx.ai/release-notes/v5.x/v5.9.0-june-2026/v5.9.0-june-2026.md)
- [SDKs overview](https://docs.flowx.ai/6.x/sdks/sdks-overview.md)
- [FlowX.AI architecture: services, layers, and data flow](https://docs.flowx.ai/6.x/docs/platform-overview/flowx-architecture.md)
- [Overview](https://docs.flowx.ai/release-notes/v6.x/v6.0.0-october-2026/migrating-from-v5.9-to-v6.0/migration-overview.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.