Flutter Data API

View as Markdown

The Flutter Data API lets you connect to TalkJS as a user and read, subscribe to, and update chat data from Flutter-based environments. It's available through the talkjs_core_flutter package on pub.dev.

The Data API is primarily intended for client environments such as mobile apps, because it connects as a single specific user.

If you need server-side access to all conversations or users, use the REST API instead.

Platform support

The Flutter Data API currently only supports Android.

iOS support is coming in a future update.

Requirements

To use the Flutter Data API, your project needs to have the following:

  • Dart 3.11.0+
  • Flutter 3.3.0+
  • For Android apps: Android API 24+

Installation

To add the TalkJS Core Flutter package to your project, run:

1flutter pub add talkjs_core_flutter

Create a TalkJS session

To connect as a user, create a TalkJS session using getTalkSession:

1import 'package:talkjs_core_flutter/talkjs_core_flutter.dart';
2
3final session = await getTalkSession(
4 TalkSessionOptions(
5 appId: '<APP_ID>', // Replace with your own app ID
6 userId: '<USER_ID>', // Replace with a user ID
7 ),
8);

Replace:

  • <APP_ID> with your TalkJS app ID. You can find your app ID on the Settings page of your TalkJS dashboard.
  • <USER_ID> with the ID of the user you want to connect as.

Once connected, the session allows you to retrieve conversations, send messages, and subscribe to real-time updates.

Android permissions

To use TalkJS in your app, it must have permission to access the internet. In your AndroidManifest.xml file, make sure the following line is present:

1<uses-permission android:name="android.permission.INTERNET" />

This is required for TalkJS to connect to the TalkJS servers.