Skip to content

Customer conversations for app developers

Customer conversations, connected.

Native support inside your iOS and Android apps, a chat widget for your site and your Telegram bot, all answering into one inbox. AI replies from your own docs; your team takes everything else.

In your app
iOS, Android, React Native, Expo
On your site
One script tag
In chat
Telegram bots
Founding 40$19/mo, locked in · 40 of 40 places left

Product previews use illustrative names and messages.

One product, five surfaces

Every place a customer can reach you, answered from one queue.

Every channel in one queue, with assignment, notes and AI hand-offs.

Native SDKs

Support that feels built-in, because it is.

The iOS SDK is SwiftUI. The Android SDK is Jetpack Compose. They follow the system's light and dark mode, take your colors and corner radius, and work offline with automatic retries.

Verified identity

Sign user ids with HMAC on your server so nobody can open someone else's history.

Photos and files

Attachments upload directly to private storage through short-lived links.

Push replies

Customers hear back through APNs and Firebase, using your own credentials.

Unread badges

An observable unread count for your own Help button.

Website chat

A widget that knows when to speak up.

Invitations with manners

  1. WhereOnly on the pages you choose — /pricing*, /docs/*
  2. WhenAfter time on page, scroll depth, or your own event
  3. How oftenOnce per visitor, per session or per week — never while chat is open
One line, before </body>
<script src="https://parleyai.app/widget.js"
  data-parley-app="pk_live_…" async></script>

Telegram

Your bot, answered from your inbox.

Paste a bot token from @BotFather. Parley verifies it, registers a secured webhook and threads each chat into one conversation. Photos and files come through; if a reply can't be delivered, you'll see why.

Shared inbox

Built for the people who live in it. All day.

Keyboard-first, realtime, and quiet until something needs you.

Assign and route

Claim, assign or hand back. Replying claims an unassigned conversation automatically.

Notes and tags

Internal notes stay internal. Tags filter the queue in one click.

Saved replies

Write the answer once, insert it anywhere, shared with the whole team.

J, K, E

Move through the queue and resolve without touching the mouse.

AI that knows its limits

Answers from your docs. Hand-offs for everything else.

Add your help center, Markdown or PDFs. For each question Parley retrieves the relevant sections and answers only from them, with sources. Customer messages and documents are treated as data, never instructions. Spend is capped per workspace, and questions with no matching docs never reach the model.

Customer context

Know who you're talking to before you reply.

Identified customers bring their account, platform, app version, custom attributes, events and subscription state from RevenueCat into every conversation.

From your backend
curl -X PUT https://api.parleyai.app/v1/server/customers/usr_8f2a91 \
  -H "Authorization: Bearer sk_live_…" \
  -d '{"name":"Maya Chen","attributes":{"plan_tier":"pro","seats":6}}'

For developers

From install to a real message, in one sitting.

  1. 01Create an application

    Sign in with Google, name your workspace and pick platforms. You get development and production keys.

  2. 02Install the SDK

    Swift Package, Gradle, npm or one script tag, configured with the public key.

  3. 03Send a test message

    Onboarding waits for your first real message and shows it arriving in the inbox. Nothing is marked done until it does.

  • Public keys in apps, secret keys hashed on servers
  • Row-level isolation for every workspace
  • Idempotent sends, verified webhooks
  • Free development environment
import Parley

@main
struct LumenApp: App {
    init() { Parley.configure(appKey: "pk_live_…") }
    var body: some Scene { WindowGroup { ContentView() } }
}

struct ContentView: View {
    @State private var showSupport = false
    var body: some View {
        Button("Contact support") { showSupport = true }
            .parleySupport(isPresented: $showSupport)
    }
}

Pricing

One plan, everything included.

Simple while we're early. The first 40 teams keep a lower price for as long as they stay.

Founding 40

40 of 40 left

For our earliest customers. Your price stays $19 while your subscription stays active.

$19/ month

0 claimed

Claim a founding place

If you cancel and return later, Standard pricing applies.

Standard

Everything in Parley, once the founding places are gone.

$29/ month
Get started

Develop free. Subscribe to go live.

Enterprise

10,000+ monthly active users or $30,000+ MRR.

Let's talk
Contact us

Opens your email app.

Founding 40 and Standard include

  • Native iOS and Android SDKs
  • React Native and Expo
  • Website chat and invitations
  • Telegram
  • Shared inbox, notes, tags, assignment
  • AI answers from your docs · 3,000/mo
  • 5,000 monthly active customers
  • 5 apps · 5 seats · 10 GB files

Questions, answered.

No. The iOS SDK renders SwiftUI (with UIKit presentation), the Android SDK renders Jetpack Compose, and React Native and Expo drive those same native screens.

Parley includes native code, so it runs in Expo development builds and production builds. Expo Go can't load third-party native modules.

It answers only from documentation you add, cites the sections it used, and hands the conversation to your team when it isn't confident or nothing in your docs matches.

You paste a bot token; Parley verifies it and registers a secured webhook. People who message your bot appear in your inbox, and your replies are delivered back to their chat.

The first 40 paying teams pay $19/month for as long as their subscription stays active. If you cancel and return, Standard pricing applies.

Yes. Every application has a free development environment — build the integration and send real test messages before you subscribe.

Your customers are already talking.

Answer them in one place. Set up in an afternoon, free until you go to production.