# Ably Documentation > Ably is a realtime experience infrastructure platform that provides pub/sub messaging, chat, realtime data synchronization, and more. - **Global Edge Network**: Ultra-low latency realtime messaging delivered through a globally distributed edge network - **Enterprise Scale**: Built to handle millions of concurrent connections with guaranteed message delivery - **Multiple Products**: Pub/Sub, AI Transport, Chat, LiveSync, LiveObjects and Spaces - **Developer-Friendly SDKs**: SDKs available for JavaScript, Node.js, Java, Python, Go, Objective-C, Swift, Csharp, PHP, Flutter, Ruby, React, React Native, and Kotlin ## Platform - [About Ably](https://ably.com/docs/platform.md): An introduction to Ably and its highly-available, scalable platform. - [Building with LLMs](https://ably.com/docs/platform/ai-llms.md): Learn how to use LLMs to build with Ably documentation. Access markdown versions of docs and use our LLM-optimized resources. - [llms.txt](https://ably.com/docs/platform/ai-llms/llms-txt.md): Discover all Ably documentation pages using llms.txt, a machine-readable index optimized for LLMs and AI assistants. - [Product guidance](https://ably.com/docs/platform/products.md): Choose the right Ably interface and SDK for your use case. Compare REST vs Realtime, purpose-built SDKs, and protocol adapters. - [Ably CLI](https://ably.com/docs/platform/tools/cli.md): The Ably CLI is a command-line interface for managing Ably resources and interacting with Ably's products APIs directly from your terminal. - [Support tickets](https://ably.com/docs/platform/support.md): Learn how to get support from Ably, file tickets, and access technical resources. ### Account Management - [Access tokens](https://ably.com/docs/platform/account/access-tokens.md): Create and manage access tokens to authenticate with the Ably Control API and Ably CLI, including expiration and rotation. - [Account overview](https://ably.com/docs/platform/account.md): Overview of the Ably dashboard for managing apps, account settings, team, billing, and usage. - [Two-factor authentication \(2FA\)](https://ably.com/docs/platform/account/2fa.md): Enable two-factor authentication for your Ably account. - [Organizations](https://ably.com/docs/platform/account/organizations.md): Manage Ably organizations, provision users, configure SSO with SCIM, and handle account roles. - [Enterprise customization](https://ably.com/docs/platform/account/enterprise-customization.md): How Enterprise customers can create a custom endpoint and benefit from Active Traffic Management and other advanced Ably features. - [Programmatic management with Control API](https://ably.com/docs/platform/account/control-api.md): The Control API is a REST API that enables you to manage your Ably account programmatically. This is the Control API user guide. - [Team](https://ably.com/docs/platform/account/team.md): Manage users, roles, and team access in your Ably account. - [Single sign-on \(SSO\)](https://ably.com/docs/platform/account/sso.md): Single sign-on enables users to authenticate with Ably using your own identity provider. ### Architecture - [Connection recovery](https://ably.com/docs/platform/architecture/connection-recovery.md): Understand how Ably's platform ensures reliable connection recovery when clients experience network disruption. - [Edge network](https://ably.com/docs/platform/architecture/edge-network.md): Understand how Ably's edge network provides reliable, low-latency connectivity to its platform from anywhere in the world. - [Fault tolerance](https://ably.com/docs/platform/architecture/fault-tolerance.md): Understand how Ably's platform is built to be fault tolerant to ensure high availability and reliability to clients. - [Idempotency](https://ably.com/docs/platform/architecture/idempotency.md): Understand how Ably provides exactly-once message delivery through idempotent publishing. - [Architecture overview](https://ably.com/docs/platform/architecture.md): Learn more about Ably's platform architecture. - [Infrastructure operations](https://ably.com/docs/platform/architecture/infrastructure-operations.md): Understand how Ably manages its infrastructure operations to ensure continued reliability and availability of its platform. - [Message ordering](https://ably.com/docs/platform/architecture/message-ordering.md): Understand how Ably achieves reliable message ordering across its platform. - [Latency](https://ably.com/docs/platform/architecture/latency.md): Understand Ably's latency performance metrics and how they ensure consistent, low-latency message delivery across the global platform. - [Performance](https://ably.com/docs/platform/architecture/performance.md): Understand how Ably delivers messages quickly and efficiently, even at high volumes. - [Scalability of the Ably platform](https://ably.com/docs/platform/architecture/platform-scalability.md): Understand how Ably's platform achieves horizontal scalability to handle large-scale realtime messaging. ### Authentication - [Basic auth](https://ably.com/docs/auth/basic.md): Basic authentication allows you to authenticate a secure server using an Ably API key and secret. - [Identified clients](https://ably.com/docs/auth/identified-clients.md): Clients can be allocated a client ID to help control their operations and interactions with Ably channels. - [Capabilities](https://ably.com/docs/auth/capabilities.md): Capabilities define which operations can be carried out on which channels by a client. - [Authentication overview](https://ably.com/docs/auth.md): Ably supports two main authentication schemes: basic authentication and token authentication. Token authentication can be implemented using JWTs, Ably tokens, and Ably token requests. - [Token revocation](https://ably.com/docs/auth/revocation.md): Token revocation is a mechanism that enables an app to invalidate authentication tokens. - [Token auth](https://ably.com/docs/auth/token.md): Token authentication allows clients to authenticate with Ably, without exposing the Ably API key and secret. - [Ably Tokens](https://ably.com/docs/auth/token/ably-tokens.md): Ably Tokens are an alternative to JWTs when you need to keep capabilities confidential or when your capability list is very large. - [JSON Web Tokens \(JWTs\)](https://ably.com/docs/auth/token/jwt.md): JWT authentication is the recommended approach for authenticating clients with Ably. Create JWTs signed with your Ably API key. ### Deprecations - [Deprecation policy](https://ably.com/docs/platform/deprecate.md): A policy detailing how Ably deprecates SDKs and APIs. - [Deprecation of TLS 1.0 and 1.1 - June 2025](https://ably.com/docs/platform/deprecate/tls-v1-1.md): A policy detailing how Ably is deprecating support for TLS 1.0 and 1.1. - [Deprecation of protocol version 1 - November 2025](https://ably.com/docs/platform/deprecate/protocol-v1.md): Details on the deprecation of Ably's realtime protocol version 1 and migration to protocol version 2. ### Errors - [Debugging](https://ably.com/docs/platform/errors.md): Debugging in Ably supported apps, including troubleshooting techniques, logging options, and tools for error analysis. - [Error codes](https://ably.com/docs/platform/errors/codes.md): Understand Ably error codes and their causes, to resolve them efficiently. ### Integrations - [Ably Queues](https://ably.com/docs/platform/integrations/queues.md): Ably queues provide a queueing mechanism to integrate Ably with your external service. - [Skip integrations](https://ably.com/docs/platform/integrations/skip-integrations.md): Learn how to skip integrations on a per-message basis, including examples for skipping all or specific integration rules. - [Integrations overview](https://ably.com/docs/platform/integrations.md): Integrations enable external services to send data to Ably channels, and for Ably events to send their data to external services. - [Datadog integration](https://ably.com/docs/platform/integrations/streaming/datadog.md): Connect Ably and Datadog to monitor messages, channels, and connections in realtime, integrating your Ably statistics with your existing Datadog setup. - [AMQP integration](https://ably.com/docs/platform/integrations/streaming/amqp.md): Send data to AMQP based on message, channel lifecycle, channel occupancy, and presence events. - [Apache Kafka integration](https://ably.com/docs/platform/integrations/streaming/kafka.md): Send data to Kafka based on message, channel lifecycle, channel occupancy, and presence events. - [AWS Kinesis integration](https://ably.com/docs/platform/integrations/streaming/kinesis.md): Send data to Kinesis based on message, channel lifecycle, channel occupancy, and presence events. - [Outbound streaming overview](https://ably.com/docs/platform/integrations/streaming.md): Outbound streaming integrations enable you to stream data from Ably to an external service for realtime processing. - [Apache Pulsar integration](https://ably.com/docs/platform/integrations/streaming/pulsar.md): Send data to Pulsar based on message, channel lifecycle, channel occupancy, and presence events. - [AWS SQS integration](https://ably.com/docs/platform/integrations/streaming/sqs.md): Send data to SQS based on message, channel lifecycle, channel occupancy, and presence events. - [Ably Kafka Connector](https://ably.com/docs/platform/integrations/inbound/kafka-connector.md): The Ably Kafka Connector sends data from Kafka to an Ably channel in realtime. - [Azure Functions integration](https://ably.com/docs/platform/integrations/webhooks/azure.md): Trigger Microsoft Azure functions based on message, channel lifecycle, channel occupancy, and presence events. - [Inbound webhooks](https://ably.com/docs/platform/integrations/inbound/webhooks.md): Incoming webhooks let you integrate external web services with Ably. - [Cloudflare Worker integration](https://ably.com/docs/platform/integrations/webhooks/cloudflare.md): Trigger Cloudflare Workers based on message, channel lifecycle, channel occupancy, and presence events. - [IFTTT integration](https://ably.com/docs/platform/integrations/webhooks/ifttt.md): Trigger IFTTT based on message, channel lifecycle, channel occupancy, and presence events. - [Generic HTTP webhooks](https://ably.com/docs/platform/integrations/webhooks/generic.md): Configure generic HTTP webhooks to trigger HTTP endpoints and notify external services when events occur in Ably. - [Google Function integration](https://ably.com/docs/platform/integrations/webhooks/gcp-function.md): Trigger Google Functions based on message, channel lifecycle, channel occupancy, and presence events. - [Outbound webhooks overview](https://ably.com/docs/platform/integrations/webhooks.md): A guide on webhook payloads, including batched, enveloped, and non-enveloped event payloads, with decoding examples and sources. - [AWS Lambda integration](https://ably.com/docs/platform/integrations/webhooks/lambda.md): Trigger AWS Lambda functions based on message, channel lifecycle, channel occupancy, and presence events. - [Zapier integration](https://ably.com/docs/platform/integrations/webhooks/zapier.md): Trigger Zapier based on message, channel lifecycle, channel occupancy, and presence events. ### Pricing - [Billing](https://ably.com/docs/platform/pricing/billing.md): Understand how invoicing and billing works for Ably packages. - [Enterprise package](https://ably.com/docs/platform/pricing/enterprise.md): Explore the features of Ably's Enterprise package. - [Free package](https://ably.com/docs/platform/pricing/free.md): Explore the features of Ably's Free package. - [Pricing overview](https://ably.com/docs/platform/pricing.md): Understand the pricing models available to you, and understand the benefits of each package type. - [Pro package](https://ably.com/docs/platform/pricing/pro.md): Explore the features and cost of Ably's Pro package. - [Pricing FAQs](https://ably.com/docs/platform/pricing/faqs.md): A list of the most commonly asked questions related to Ably pricing. - [Limits](https://ably.com/docs/platform/pricing/limits.md): The limits associated with each Ably package. - [Standard package](https://ably.com/docs/platform/pricing/standard.md): Explore the features and cost of Ably's Standard package. - [Data broadcast pricing example](https://ably.com/docs/platform/pricing/examples/data-broadcast.md): A pricing example that uses Ably Pub/Sub for data broadcast. Example shows how message conflation reduces message costs from ~$1,800 to ~$374/month for 10K users across 50 matches. - [AI support chatbot pricing example](https://ably.com/docs/platform/pricing/examples/ai-chatbot.md): Calculate AI Transport pricing for conversations with an AI chatbot. Example shows how using the message-per-response pattern and modifying the append rollup window can generate cost savings. - [Major livestream event pricing example](https://ably.com/docs/platform/pricing/examples/livestream.md): Calculate Ably Chat pricing for livestream events with high-concurrency chat. Example shows 5K concurrent viewers, message batching reducing costs by 95%, and total cost of ~$92.50 for a 1-hour major event. - [Realtime dashboard pricing example](https://ably.com/docs/platform/pricing/examples/realtime-dashboard.md): Calculate Pub/Sub pricing for healthcare patient monitoring dashboards. Example shows realtime vitals tracking for 100 patients monitored by 5 care coordinators, with total cost of ~$98/month including presence and history features. - [Enterprise support chat pricing example](https://ably.com/docs/platform/pricing/examples/support-chat.md): Calculate Ably Chat pricing for enterprise customer support chat. Example shows 50K MAU, one-to-one messaging, and why consumption pricing at ~$78/month outperforms MAU pricing at $2,500/month for support use cases. ## Pub/Sub - [About Pub/Sub](https://ably.com/docs/basics.md): Learn more about what Ably Pub/Sub is and how you can use it to build powerful realtime applications. - [Basic pub-sub](https://ably.com/docs/pub-sub.md): Get a channel, subscribe clients to it, and publish messages to the channel. - [Advanced pub-sub](https://ably.com/docs/pub-sub/advanced.md): Utilize advanced pub-sub features, such as, subscription filters and idempotent publishing. - [Guide: Building realtime dashboards with Ably](https://ably.com/docs/pub-sub/guides/dashboards-and-visualizations.md): Architecting realtime dashboards with Ably: from fan engagement at scale to critical monitoring. Key decisions, technical depth, and why Ably is the right choice. - [Guide: Handle discontinuity in Pub/Sub](https://ably.com/docs/pub-sub/guides/handling-discontinuity.md): Detect and recover from message discontinuity in Ably Pub/Sub applications. Learn to use the resumed flag and history API to recover missed messages. - [Guide: Data streaming and distribution with Ably](https://ably.com/docs/pub-sub/guides/data-streaming.md): Optimize data streaming at scale with Ably: reduce bandwidth with Deltas, manage bursts with server-side batching, ensure freshness with Conflation. ### API Reference - [API Reference](https://ably.com/docs/api.md): API reference section of the Ably developer documentation. - [REST API Token Request Spec](https://ably.com/docs/api/token-request-spec.md): Ably raw REST API specification for TokenRequests. ### Channels - [Channel concepts](https://ably.com/docs/channels.md): Channels are used to organize message traffic within Ably. - [Channel states](https://ably.com/docs/channels/states.md): Channels transition through multiple states. - [Deltas](https://ably.com/docs/channels/options/deltas.md): The delta channel option enables clients to subscribe to a channel and only receive the difference between the present and previous message. - [Echo](https://ably.com/docs/channels/options/echo.md): The echo channel option enables per-channel control over whether a client receives its own published messages. - [Encryption](https://ably.com/docs/channels/options/encryption.md): Encrypt message payloads using the cipher channel option. - [Rewind](https://ably.com/docs/channels/options/rewind.md): The rewind channel param enables clients to attach to a channel and receive messages previously published on it. - [Channel options overview](https://ably.com/docs/channels/options.md): Channel options customize the functionality of channels. ### Connections - [Connections overview](https://ably.com/docs/connect.md): Establish and maintain a persistent connection to Ably using the realtime interface of an Ably SDK. - [Connection state and recovery](https://ably.com/docs/connect/states.md): Monitor connection state transitions, handle state changes, and recover connections after disruptions using the Ably Realtime SDK. ### Getting Started - [Getting started: Pub/Sub with Flutter](https://ably.com/docs/getting-started/flutter.md): A getting started guide for Ably Pub/Sub Flutter that steps through some of the key features using Flutter. - [Getting started: Pub/Sub in C\# .NET](https://ably.com/docs/getting-started/dotnet.md): A getting started guide for Ably Pub/Sub C# .NET that steps through some of the key features using C# and .NET. - [Getting started with Pub/Sub](https://ably.com/docs/getting-started.md): Getting started with Ably Pub/Sub in your language or framework of choice. Learn how to publish, subscribe, track presence, fetch message history, and manage realtime connections. - [Getting started: Pub/Sub in Go](https://ably.com/docs/getting-started/go.md): Get started with Pub/Sub in Go using Ably. Learn how to publish, subscribe, track presence, fetch message history, and manage realtime connections. - [Getting started: Pub/Sub in Java](https://ably.com/docs/getting-started/java.md): A getting started guide for Ably Pub/Sub Java that steps through some of the key features using Java. - [Getting started: Pub/Sub in Laravel](https://ably.com/docs/getting-started/laravel.md): A getting started guide for Ably Pub/Sub Laravel 12 that steps through some of the key features using Laravel. - [Getting started: Pub/Sub in Kotlin](https://ably.com/docs/getting-started/kotlin.md): Get started with Pub/Sub in Kotlin using Ably. Learn how to publish, subscribe, track presence, fetch message history, and manage realtime connections. - [Getting started: Pub/Sub in Next.js](https://ably.com/docs/getting-started/nextjs.md): Get started with Ably Pub/Sub in Next.js. Learn how to publish and subscribe to messages, track presence, retrieve message history, and manage realtime connections in a Next.js App Router application. - [Getting started: Pub/Sub in JavaScript](https://ably.com/docs/getting-started/javascript.md): Get started with Pub/Sub in vanilla JavaScript using Ably. Learn how to publish, subscribe, track presence, fetch message history, and manage realtime connections. - [Getting started: Pub/Sub in Node.js](https://ably.com/docs/getting-started/node.md): Get started with Pub/Sub in JavaScript using Ably. Learn how to publish, subscribe, track presence, fetch message history, and manage realtime connections. - [Getting started: Pub/Sub in Objective-C](https://ably.com/docs/getting-started/objective-c.md): A getting started guide for Ably Pub/Sub Objective-C that steps through some of the key features using Objective-C. - [Getting started: Pub/Sub in PHP](https://ably.com/docs/getting-started/php.md): A getting started guide for Ably Pub/Sub PHP that steps through some of the key features using PHP. - [Getting started: Pub/Sub in Python](https://ably.com/docs/getting-started/python.md): A getting started guide for Ably Pub/Sub Python that steps through some of the key features using Python. - [React Hooks](https://ably.com/docs/getting-started/react-hooks.md): The React submodule enables you to use React Hooks to connect to Ably. - [Getting started: Pub/Sub with React](https://ably.com/docs/getting-started/react.md): A getting started guide for Ably Pub/Sub React that steps through some of the key features using React and Vite. - [Getting started: Pub/Sub with React Native](https://ably.com/docs/getting-started/react-native.md): A getting started guide for Ably Pub/Sub React Native that steps through some of the key features using React Native with Expo. - [Getting started: Pub/Sub in Swift](https://ably.com/docs/getting-started/swift.md): Get started with Pub/Sub in Swift using Ably. Learn how to publish, subscribe, track presence, fetch message history, and manage realtime connections. - [Getting started: Pub/Sub in Ruby](https://ably.com/docs/getting-started/ruby.md): A getting started guide for Ably Pub/Sub Ruby that steps through some of the key features using Ruby. ### Messages - [Message batching](https://ably.com/docs/messages/batch.md): Send messages to multiple channels in a single transaction, or batch messages server-side before sending them to subscribers. - [Message concepts](https://ably.com/docs/messages.md): Messages contain data and are sent and received through channels. - [Message annotations](https://ably.com/docs/messages/annotations.md): Annotate messages on a channel with additional metadata. - [Updates, deletes and appends](https://ably.com/docs/messages/updates-deletes.md): Update and delete messages published to a channel, and retrieve message version history. ### Metadata & Statistics - [Statistics](https://ably.com/docs/metadata-stats/stats.md): Statistics are available at account-level and app-level to monitor your usage of Ably. - [Metadata overview](https://ably.com/docs/metadata-stats/metadata.md): Metadata retrieves information about app activity, such as connections, channels and API requests. - [Metadata REST requests](https://ably.com/docs/metadata-stats/metadata/rest.md): Retrieve metadata about single channels, or enumerate through all active channels via REST requests. - [Metadata subscriptions](https://ably.com/docs/metadata-stats/metadata/subscribe.md): Retrieve metadata updates in realtime by subscribing to metachannels. ### Presence & Occupancy - [Presence and occupancy overview](https://ably.com/docs/presence-occupancy.md): Presence and occupancy provide information about clients attached to channels. This includes metrics about the attached clients, and details of the individual members attached to the channel. - [Occupancy](https://ably.com/docs/presence-occupancy/occupancy.md): Occupancy provides high level metrics about the clients attached to a channel. - [Presence](https://ably.com/docs/presence-occupancy/presence.md): Presence enables clients to be aware of the other clients present on a channel. ### Protocols - [Protocols](https://ably.com/docs/protocols.md): Clients can use the Ably network protocol adapters. This is especially useful where an Ably SDK is not available for your language of choice, or where platform resource constraints prohibit use of an SDK. - [MQTT](https://ably.com/docs/protocols/mqtt.md): Any MQTT-enabled client can communicate with the Ably service through the Ably MQTT protocol adapter. This is especially useful where an Ably SDK is not available for your language of choice. - [Pusher Adapter](https://ably.com/docs/protocols/pusher.md): Use the Pusher Adapter to migrate from Pusher to Ably by only changing your API key. - [PubNub Adapter](https://ably.com/docs/protocols/pubnub.md): Use the PubNub Adapter to migrate from PubNub to Ably by only changing your API key. - [SSE](https://ably.com/docs/protocols/sse.md): Ably provides support for Server-Sent Events (SSE). This is useful for where browser clients support SSE, and the use case does not require or support the resources used by an Ably SDK. ### Push Notifications - [Push notifications overview](https://ably.com/docs/push.md): Ably delivers push notifications to user devices or browsers. - [Publish and receive push notifications](https://ably.com/docs/push/publish.md): Learn how to publish and manage push notifications with Ably, covering direct and channel-based processes, payload details, and subscription management. - [Configure and activate devices](https://ably.com/docs/push/configure/device.md): Learn how to set up and manage device activations for push notifications with Ably, including platform installation, device registration, and handling lifecycle events. - [Configure and activate web browsers](https://ably.com/docs/push/configure/web.md): Learn how to set up and manage browser activations for push notifications with Ably, including platform installation, browser registration, and handling lifecycle events. - [Getting started: Push Notifications in Swift](https://ably.com/docs/push/getting-started/apns.md): Get started with Ably Push Notifications in Swift. Learn how to register for push notifications, activate push on your client, handle incoming notifications, and send push messages. - [Getting started: Push Notifications in Kotlin](https://ably.com/docs/push/getting-started/fcm.md): Get started with Ably Push Notifications in Kotlin for Android. Learn how to register for push notifications with Firebase Cloud Messaging (FCM), activate push on your client, handle incoming notifications, and send push messages. - [Getting started: Push Notifications in React Native](https://ably.com/docs/push/getting-started/react-native.md): Get started with Ably Push Notifications in React Native. Learn how to register for push notifications with Firebase Cloud Messaging (FCM), activate push on your client, handle incoming notifications, and send push messages on iOS and Android. - [Getting started: Push Notifications in Flutter](https://ably.com/docs/push/getting-started/flutter.md): Get started with Ably Push Notifications in Flutter. Learn how to register for push notifications on iOS and Android, activate push on your client, handle incoming notifications, and send push messages. - [Getting started: Web Push Notifications](https://ably.com/docs/push/getting-started/web.md): Get started with Ably Push Notifications in JavaScript. Learn how to register a service worker, activate push on your client, handle incoming notifications, and send push messages from the browser. ### REST SDK API Reference - [SSE and Raw HTTP Streaming API](https://ably.com/docs/api/sse.md): Ably provides support for Server-Sent Events (SSE). This is useful for where browser clients support SSE, and the use case does not require or support the resources used by the Ably client library SDK. - [Channel Status](https://ably.com/docs/api/rest-sdk/channel-status.md): Client Library SDK REST API Reference Channel Status documentation. - [Encryption](https://ably.com/docs/api/rest-sdk/encryption.md): Client Library SDK REST API Reference Crypto documentation. - [Presence](https://ably.com/docs/api/rest-sdk/presence.md): Presence events provide clients with information about the status of other clients 'present' on a channel - [Messages](https://ably.com/docs/api/rest-sdk/messages.md): Client Library SDK REST API Reference Message documentation. - [History](https://ably.com/docs/api/rest-sdk/history.md): Client Library SDK REST API Reference History documentation. - [Channels](https://ably.com/docs/api/rest-sdk/channels.md): Client Library SDK REST API Reference Channels documentation. - [Statistics](https://ably.com/docs/api/rest-sdk/statistics.md): Client Library SDK REST API Reference Statistics documentation. - [Push Notifications - Admin](https://ably.com/docs/api/rest-sdk/push-admin.md): Client Library SDK REST API Reference Push documentation. - [REST API Reference](https://ably.com/docs/api/rest-api.md): Ably provides the raw REST API for situations where an Ably client library SDK is not available on the platform of choice, or due to resource constraints. - [Authentication](https://ably.com/docs/api/rest-sdk/authentication.md): Client Library SDK REST API Reference Authentication documentation. - [Constructor](https://ably.com/docs/api/rest-sdk.md): Client Library SDK REST API Reference constructor documentation. - [Types](https://ably.com/docs/api/rest-sdk/types.md): Client Library SDK REST API Reference Types documentation. ### Realtime SDK API Reference - [Channel Metadata](https://ably.com/docs/api/realtime-sdk/channel-metadata.md): Realtime Client Library SDK API reference section for channel metadata. - [Authentication](https://ably.com/docs/api/realtime-sdk/authentication.md): Realtime Client Library SDK API reference section for authentication. - [Connection](https://ably.com/docs/api/realtime-sdk/connection.md): Realtime Client Library SDK API reference section for the connection object. - [Messages](https://ably.com/docs/api/realtime-sdk/messages.md): Realtime Client Library SDK API reference section for the message object. - [Encryption](https://ably.com/docs/api/realtime-sdk/encryption.md): Realtime Client Library SDK API reference section for the crypto object. - [History](https://ably.com/docs/api/realtime-sdk/history.md): Realtime Client Library SDK API reference section for the history methods. - [Push Notifications - Device Activation and Subscription](https://ably.com/docs/api/realtime-sdk/push.md): Realtime Client Library SDK API reference section for push notification device subscription. - [Push Notifications - Admin](https://ably.com/docs/api/realtime-sdk/push-admin.md): Realtime Client Library SDK API reference section for push notifications admin. - [Statistics](https://ably.com/docs/api/realtime-sdk/statistics.md): Realtime Client Library SDK API reference section for the stats object. - [Presence](https://ably.com/docs/api/realtime-sdk/presence.md): Realtime Client Library SDK API reference section for the presence object. - [Channels](https://ably.com/docs/api/realtime-sdk/channels.md): Realtime Client Library SDK API reference section for the channels and channel objects. - [Constructor](https://ably.com/docs/api/realtime-sdk.md): Realtime Client Library SDK API reference section for the constructor object. - [Types](https://ably.com/docs/api/realtime-sdk/types.md): Realtime Client Library SDK API reference section for types. ### Storage & History - [Message Storage](https://ably.com/docs/storage-history/storage.md): Explore the different ways Ably can handle Message Storage - [History](https://ably.com/docs/storage-history/history.md): Learn about accessing message history with the history and rewind features ## Chat - [About Chat](https://ably.com/docs/chat.md): Learn more about Ably Chat and the features that enable you to quickly build functionality into new and existing applications. - [Chat authentication](https://ably.com/docs/chat/authentication.md): Configure authentication for Chat applications with the required capabilities. - [Connections](https://ably.com/docs/chat/connect.md): Manage the realtime connections to Ably. - [Integrations](https://ably.com/docs/chat/integrations.md): Ably Chat integrations with external services. - [SDK setup](https://ably.com/docs/chat/setup.md): Install, authenticate and instantiate the Chat SDK. - [Process messages with external systems](https://ably.com/docs/chat/external-storage-and-processing/data-processing.md): Process chat messages through external systems to trigger notifications, handle slash commands, analyze sentiment, and more. - [Data storage](https://ably.com/docs/chat/external-storage-and-processing/data-storage.md): Store chat messages from Ably Chat in your own data store for long-term retention, compliance, and analytics. - [Extract messages via integrations](https://ably.com/docs/chat/external-storage-and-processing/data-extraction.md): Extract chat messages from Ably Chat using integrations for external processing, storage, or analysis. - [External storage and processing](https://ably.com/docs/chat/external-storage-and-processing.md): Extract, store, and process chat messages from Ably Chat using integrations. - [Getting started: Chat in JavaScript / TypeScript](https://ably.com/docs/chat/getting-started/javascript.md): Get started with Ably's JavaScript Chat SDK. Build scalable, realtime chat applications using live chat APIs and realtime messaging. - [Getting started with Chat](https://ably.com/docs/chat/getting-started.md): Getting started with Ably Chat in your language or framework of choice. Learn how to send and receive messages, track online presence, fetch message history, implement typing indicators, among other features. - [Getting started: Chat with Android](https://ably.com/docs/chat/getting-started/android.md): A getting started guide for Ably Chat Android that steps through some of the key features using Jetpack Compose. - [Getting started: Chat UI Kit for React](https://ably.com/docs/chat/getting-started/react-ui-kit.md): Step-by-step quick-start for ably-chat-react-ui-kit using React and Vite. - [Getting started: Chat with JVM \(Kotlin/Java\)](https://ably.com/docs/chat/getting-started/jvm.md): A getting started guide for Ably Chat JVM that steps through some of the key features using Kotlin. - [Getting started: Chat with React Native](https://ably.com/docs/chat/getting-started/react-native.md): A getting started guide for Ably Chat React Native that steps through some of the key features using React Native. - [Getting started: Chat with Swift \(using AsyncSequence\)](https://ably.com/docs/chat/getting-started/swift-async-sequence.md): A getting started guide for Ably Chat iOS that steps through some of the key features using SwiftUI with AsyncSequence for handling realtime events. - [Getting started: Chat with React](https://ably.com/docs/chat/getting-started/react.md): A getting started guide for Ably Chat React that steps through some of the key features using React and Vite. - [Guide: Handle discontinuity in Chat](https://ably.com/docs/chat/guides/handling-discontinuity.md): Detect and recover from message discontinuity in Ably Chat applications. Learn to use the onDiscontinuity handler and historyBeforeSubscribe to recover missed messages. - [Getting started: Chat with Swift \(Callback Approach\)](https://ably.com/docs/chat/getting-started/swift.md): A getting started guide for Ably Chat iOS that steps through some of the key features using SwiftUI with callback-based subscriptions. - [Moderation](https://ably.com/docs/chat/moderation.md): Detect and remove unwanted content in a Chat Room. - [Guide: Building livestream chat at scale with Ably](https://ably.com/docs/chat/guides/build-livestream.md): Architecting livestream chat with Ably: performance, reliability, and cost at scale. Key decisions, technical depth, and why Ably is the right choice. - [Styling Ably Chat UI React Kit](https://ably.com/docs/chat/react-ui-kit/component-styling.md): A guide to styling components in the Ably Chat React UI Kit with and without Tailwind CSS. - [React UI Kit setup](https://ably.com/docs/chat/react-ui-kit/setup.md): Install, configure and instantiate the Chat React UI Kit. - [React UI Kit](https://ably.com/docs/chat/react-ui-kit.md): Learn more about the Ably Chat React UI Kit and how to use it to quickly build chat interfaces in your React applications. - [Ably Chat UI React Kit](https://ably.com/docs/chat/react-ui-kit/components.md): Comprehensive documentation for the Ably Chat React UI Kit. - [Providers and Hooks](https://ably.com/docs/chat/react-ui-kit/providers.md): Comprehensive documentation for the Ably Chat React UI Kits providers and hooks - [Message history](https://ably.com/docs/chat/rooms/history.md): Retrieve previously sent messages from history. - [Rooms](https://ably.com/docs/chat/rooms.md): Use rooms to organize your users and chat messages. - [Share media](https://ably.com/docs/chat/rooms/media.md): Share media such as images, videos, or files in a chat room. - [Occupancy](https://ably.com/docs/chat/rooms/occupancy.md): Use occupancy to see how many users are in a room. - [Message reactions](https://ably.com/docs/chat/rooms/message-reactions.md): React to chat messages - [Message replies](https://ably.com/docs/chat/rooms/replies.md): Add reply functionality to messages in a chat room. - [Room reactions](https://ably.com/docs/chat/rooms/reactions.md): Enable users to send reactions at the room level, based on what is happening in your application, such as a goal being scored in your livestream. - [Presence](https://ably.com/docs/chat/rooms/presence.md): Use presence to see which users are online and their user status. - [Messages](https://ably.com/docs/chat/rooms/messages.md): Send, update, delete, and receive messages in chat rooms. - [Typing indicators](https://ably.com/docs/chat/rooms/typing.md): Display typing indicators in a room so that users can see when someone else is writing a message. - [Custom Moderation](https://ably.com/docs/chat/moderation/custom.md): Detect and remove unwanted content in a Chat Room using a custom provider - [AWS Lambda](https://ably.com/docs/chat/moderation/custom/lambda.md): Detect and remove unwanted content in a Chat Room using AWS Lambda. - [Webhook](https://ably.com/docs/chat/moderation/custom/webhook.md): Detect and remove unwanted content in a Chat Room using a custom webhook endpoint. - [Azure Content Safety](https://ably.com/docs/chat/moderation/direct/azure.md): Detect and remove unwanted content in a Chat Room using Azure Content Safety. - [Bodyguard](https://ably.com/docs/chat/moderation/direct/bodyguard.md): Detect and remove unwanted content in a Chat Room using Bodyguard AI. - [Hive \(Dashboard\)](https://ably.com/docs/chat/moderation/direct/hive-dashboard.md): Detect and remove unwanted content in a Chat Room using Hive AI, providing human moderators a place to review and act on content. - [Tisane](https://ably.com/docs/chat/moderation/direct/tisane.md): Detect and remove unwanted content in a Chat Room using Tisane AI. - [Hive \(Model Only\)](https://ably.com/docs/chat/moderation/direct/hive-model-only.md): Detect and remove unwanted content in a Chat Room using Hive AI. ### API Reference - [Ably Chat API Reference](https://ably.com/docs/chat/api.md): API reference section of the Ably Chat developer documentation. - [ChatClient](https://ably.com/docs/chat/api/kotlin/chat-client.md): API reference for the ChatClient interface in the Ably Chat Kotlin SDK. - [Connection](https://ably.com/docs/chat/api/kotlin/connection.md): API reference for the Connection interface in the Ably Chat Kotlin SDK. - [MessageReactions](https://ably.com/docs/chat/api/kotlin/message-reactions.md): API reference for the MessageReactions interface in the Ably Chat Kotlin SDK. - [Messages](https://ably.com/docs/chat/api/kotlin/messages.md): API reference for the Messages interface in the Ably Chat Kotlin SDK. - [RoomReactions](https://ably.com/docs/chat/api/kotlin/room-reactions.md): API reference for the RoomReactions interface in the Ably Chat Kotlin SDK. - [Occupancy](https://ably.com/docs/chat/api/kotlin/occupancy.md): API reference for the Occupancy interface in the Ably Chat Kotlin SDK. - [Presence](https://ably.com/docs/chat/api/kotlin/presence.md): API reference for the Presence interface in the Ably Chat Kotlin SDK. - [Room](https://ably.com/docs/chat/api/kotlin/room.md): API reference for the Room interface in the Ably Chat Kotlin SDK. - [Typing](https://ably.com/docs/chat/api/kotlin/typing.md): API reference for the Typing interface in the Ably Chat Kotlin SDK. - [Message](https://ably.com/docs/chat/api/kotlin/message.md): API reference for the Message interface in the Ably Chat Kotlin SDK. - [Rooms](https://ably.com/docs/chat/api/kotlin/rooms.md): API reference for the Rooms interface in the Ably Chat Kotlin SDK. - [Providers](https://ably.com/docs/chat/api/react/providers.md): API reference for the ChatClientProvider and ChatRoomProvider components in the Ably Chat React SDK. - [useChatClient](https://ably.com/docs/chat/api/react/use-chat-client.md): API reference for the useChatClient hook in the Ably Chat React SDK. - [useMessages](https://ably.com/docs/chat/api/react/use-messages.md): API reference for the useMessages hook in the Ably Chat React SDK. - [useChatConnection](https://ably.com/docs/chat/api/react/use-chat-connection.md): API reference for the useChatConnection hook in the Ably Chat React SDK. - [useOccupancy](https://ably.com/docs/chat/api/react/use-occupancy.md): API reference for the useOccupancy hook in the Ably Chat React SDK. - [usePresenceListener](https://ably.com/docs/chat/api/react/use-presence-listener.md): API reference for the usePresenceListener hook in the Ably Chat React SDK. - [useRoomReactions](https://ably.com/docs/chat/api/react/use-room-reactions.md): API reference for the useRoomReactions hook in the Ably Chat React SDK. - [usePresence](https://ably.com/docs/chat/api/react/use-presence.md): API reference for the usePresence hook in the Ably Chat React SDK. - [useRoom](https://ably.com/docs/chat/api/react/use-room.md): API reference for the useRoom hook in the Ably Chat React SDK. - [ChatClient](https://ably.com/docs/chat/api/javascript/chat-client.md): API reference for the ChatClient class in the Ably Chat JavaScript SDK. - [useTyping](https://ably.com/docs/chat/api/react/use-typing.md): API reference for the useTyping hook in the Ably Chat React SDK. - [Connection](https://ably.com/docs/chat/api/javascript/connection.md): API reference for the Connection interface in the Ably Chat JavaScript SDK. - [MessageReactions](https://ably.com/docs/chat/api/javascript/message-reactions.md): API reference for the MessageReactions interface in the Ably Chat JavaScript SDK. - [Message](https://ably.com/docs/chat/api/javascript/message.md): API reference for the Message interface in the Ably Chat JavaScript SDK. - [Occupancy](https://ably.com/docs/chat/api/javascript/occupancy.md): API reference for the Occupancy interface in the Ably Chat JavaScript SDK. - [Presence](https://ably.com/docs/chat/api/javascript/presence.md): API reference for the Presence interface in the Ably Chat JavaScript SDK. - [Messages](https://ably.com/docs/chat/api/javascript/messages.md): API reference for the Messages interface in the Ably Chat JavaScript SDK. - [RoomReactions](https://ably.com/docs/chat/api/javascript/room-reactions.md): API reference for the RoomReactions interface in the Ably Chat JavaScript SDK. - [Room](https://ably.com/docs/chat/api/javascript/room.md): API reference for the Room interface in the Ably Chat JavaScript SDK. - [Rooms](https://ably.com/docs/chat/api/javascript/rooms.md): API reference for the Rooms interface in the Ably Chat JavaScript SDK. - [Typing](https://ably.com/docs/chat/api/javascript/typing.md): API reference for the Typing interface in the Ably Chat JavaScript SDK. ## Spaces - [Spaces authentication](https://ably.com/docs/spaces/authentication.md): Configure authentication for Spaces applications with the required capabilities. - [Live cursors](https://ably.com/docs/spaces/cursors.md): Track the positions of cursors within a space. - [Avatar stack](https://ably.com/docs/spaces/avatar.md): Avatar stacks display the online status of members in a space. - [About Spaces](https://ably.com/docs/spaces.md): Spaces by Ably enables you to build collaborative environments in your application. - [Member location](https://ably.com/docs/spaces/locations.md): Member location displays where users are within a space. - [React Hooks](https://ably.com/docs/spaces/react.md): Incorporate Spaces into your React application with idiomatic and user-friendly React Hooks. - [Space](https://ably.com/docs/spaces/space.md): A space is a virtual area of your application in which realtime collaboration between users can take place. - [SDK setup](https://ably.com/docs/spaces/setup.md): Install, authenticate and instantiate the Spaces SDK. - [Component locking](https://ably.com/docs/spaces/locking.md): Component locking enables members to lock UI components before editing them to reduce the chances of conflicting changes being made. ## LiveObjects - [Batch operations](https://ably.com/docs/liveobjects/batch.md): Group multiple objects operations into a single channel message to apply grouped operations atomically and improve performance. - [LiveCounter](https://ably.com/docs/liveobjects/counter.md): Create, update and receive updates for a numerical counter that synchronizes state across clients in realtime. - [About LiveObjects](https://ably.com/docs/liveobjects.md): Learn about Ably LiveObjects, its features, use cases, and how it simplifies realtime state synchronization. - [Lifecycle events](https://ably.com/docs/liveobjects/lifecycle.md): Understand lifecycle events for Objects, LiveMap and LiveCounter to track synchronization events and object deletions. - [Inband Objects](https://ably.com/docs/liveobjects/inband-objects.md): Subscribe to LiveObjects updates from Pub/Sub SDKs. - [LiveMap](https://ably.com/docs/liveobjects/map.md): Create, update and receive updates for a key/value data structure that synchronizes state across clients in realtime. - [Using the REST API](https://ably.com/docs/liveobjects/rest-api-usage.md): Learn how to work with Ably LiveObjects using the REST API - [Object storage](https://ably.com/docs/liveobjects/storage.md): Learn about LiveObjects object storage. - [Typing](https://ably.com/docs/liveobjects/typing.md): Type objects on a channel for type safety and code autocompletion. - [Using the REST SDK](https://ably.com/docs/liveobjects/rest-sdk-usage.md): Learn how to work with Ably LiveObjects using the REST SDK - [Billing](https://ably.com/docs/liveobjects/concepts/billing.md): Understand how LiveObjects operations contribute to your Ably usage and billing. - [Instance](https://ably.com/docs/liveobjects/concepts/instance.md): Learn about Instance, a reference to a specific LiveObject instance for direct manipulation - [Objects](https://ably.com/docs/liveobjects/concepts/objects.md): Learn how data is represented as objects in Ably LiveObjects - [Operations](https://ably.com/docs/liveobjects/concepts/operations.md): Learn how objects are updated by operations in Ably LiveObjects. - [Synchronization](https://ably.com/docs/liveobjects/concepts/synchronization.md): Learn how data is synchronized between clients. - [PathObject](https://ably.com/docs/liveobjects/concepts/path-object.md): Learn about PathObject, a path-based API for accessing and manipulating LiveObjects data structures - [Getting started: LiveObjects in Java](https://ably.com/docs/liveobjects/quickstart/java.md): A quickstart guide to learn the basics of integrating the Ably LiveObjects product into your Java application. - [Getting started: LiveObjects in Swift](https://ably.com/docs/liveobjects/quickstart/swift.md): A quickstart guide to learn the basics of integrating the Ably LiveObjects product into your Swift application. - [Getting started: LiveObjects in JavaScript](https://ably.com/docs/liveobjects/quickstart/javascript.md): A getting started guide to learn the basics of integrating the Ably LiveObjects product into your JavaScript application. ## LiveSync - [About LiveSync](https://ably.com/docs/livesync.md): LiveSync enables you to synchronize changes in your database to application clients at scale. - [MongoDB database connector](https://ably.com/docs/livesync/mongodb.md): The MongoDB database connector connects to your database and publishes document changes in realtime over Ably Pub/Sub channels - [Postgres database connector](https://ably.com/docs/livesync/postgres.md): The Ably Database Connector connects your database to frontend clients in realtime through Ably channels. - [Frontend data models](https://ably.com/docs/livesync/postgres/models.md): The frontend data models to keep your frontend applications up to date with your backend database. - [Quickstart](https://ably.com/docs/livesync/postgres/quickstart.md): A quickstart guide to learn the basics of integrating the Ably LiveSync product into your application. ## AI Transport - [About AI Transport](https://ably.com/docs/ai-transport.md): AI Transport provides realtime infrastructure for AI agents, enabling token streaming, tool calls, and bidirectional communication between clients and AI backends. - [Why AI Transport](https://ably.com/docs/ai-transport/why.md): Learn why AI Transport is the best way to connect your AI agents to users in realtime, with built-in support for streaming, recovery, and multi-device sessions. - [Client transport API](https://ably.com/docs/ai-transport/api-reference/client-transport.md): API reference for the AI Transport client transport. Options, methods, events, and the View interface. - [Error codes](https://ably.com/docs/ai-transport/api-reference/error-codes.md): Error codes in Ably AI Transport. Codes, descriptions, HTTP status, and recovery guidance. - [Codec API](https://ably.com/docs/ai-transport/api-reference/codec.md): API reference for the AI Transport codec interface. Build custom codecs to integrate any AI framework. - [API reference](https://ably.com/docs/ai-transport/api-reference.md): API reference for Ably AI Transport. Client transport, server transport, React hooks, Vercel integration, codec, and error codes. - [Vercel integration API](https://ably.com/docs/ai-transport/api-reference/vercel.md): API reference for the AI Transport Vercel AI SDK integration. UIMessageCodec, ChatTransport, and pre-bound factories. - [Server transport API](https://ably.com/docs/ai-transport/api-reference/server-transport.md): API reference for the AI Transport server transport. Turn lifecycle, cancel routing, and configuration. - [React hooks](https://ably.com/docs/ai-transport/api-reference/react-hooks.md): API reference for AI Transport React hooks. Generic hooks and Vercel-specific hooks for building chat UIs. - [Sessions](https://ably.com/docs/ai-transport/concepts/sessions.md): Understand sessions in AI Transport: persistent, shared conversation state that exists independently of any participant's connection. - [Messages and conversation tree](https://ably.com/docs/ai-transport/concepts/messages-and-conversation-tree.md): Understand how AI Transport organises messages into a branching conversation tree, and how views provide each participant with their own linear perspective. - [Transport](https://ably.com/docs/ai-transport/concepts/transport.md): Understand the transport layer in AI Transport: client transport, agent transport, and the codec that bridges your AI framework to Ably. - [Authentication](https://ably.com/docs/ai-transport/concepts/authentication.md): Understand how authentication works in Ably AI Transport: Ably token auth for channel access, HTTP headers for server endpoints, and cancel authorization. - [Turns](https://ably.com/docs/ai-transport/concepts/turns.md): Understand turns in AI Transport: the logical unit of agent work that structures prompt-response cycles with lifecycle states, cancellation, and execution resilience. - [Agent presence](https://ably.com/docs/ai-transport/features/agent-presence.md): Show agent status in your AI application with Ably Presence. Display streaming, thinking, idle, and offline states in real time. - [Cancellation](https://ably.com/docs/ai-transport/features/cancellation.md): Cancel AI responses mid-stream with Ably AI Transport. Scoped cancel signals, server-side authorization, and graceful abort handling. - [Conversation branching](https://ably.com/docs/ai-transport/features/branching.md): Branch conversations with edit and regenerate in Ably AI Transport. Navigate sibling branches and maintain full conversation history. - [Chain of thought](https://ably.com/docs/ai-transport/features/chain-of-thought.md): Stream reasoning and thinking content alongside responses with Ably AI Transport. Display chain-of-thought in real time. - [Double texting](https://ably.com/docs/ai-transport/features/double-texting.md): Handle users sending multiple messages while the AI is streaming with Ably AI Transport. Queue or run messages concurrently. - [Concurrent turns](https://ably.com/docs/ai-transport/features/concurrent-turns.md): Run multiple AI turns simultaneously with Ably AI Transport. Independent streams, scoped cancellation, and multi-agent support. - [Edit and regenerate](https://ably.com/docs/ai-transport/features/edit-and-regenerate.md): Edit user messages and regenerate AI responses with Ably AI Transport. Fork conversations and navigate between branches. - [History and replay](https://ably.com/docs/ai-transport/features/history.md): Load conversation history from Ably channels with AI Transport. Paginated history, gapless continuity, and scroll-back patterns. - [Interruption and barge-in](https://ably.com/docs/ai-transport/features/interruption.md): Let users interrupt AI agents mid-stream with Ably AI Transport. Cancel-then-send and send-alongside patterns for responsive AI interactions. - [Human-in-the-loop](https://ably.com/docs/ai-transport/features/human-in-the-loop.md): Add human approval gates to AI agent workflows with Ably AI Transport. Approve tool executions and provide input across devices. - [Multi-device sessions](https://ably.com/docs/ai-transport/features/multi-device.md): Share AI conversations across tabs, phones, and laptops with Ably AI Transport. All devices see the same session in real time. - [Optimistic updates](https://ably.com/docs/ai-transport/features/optimistic-updates.md): User messages appear instantly in Ably AI Transport. Optimistic insertion with automatic reconciliation when the server confirms. - [Push notifications](https://ably.com/docs/ai-transport/features/push-notifications.md): Notify users when AI agents complete background tasks with Ably Push Notifications. Reach users even when they're offline. - [Reconnection and recovery](https://ably.com/docs/ai-transport/features/reconnection-and-recovery.md): AI Transport streams survive connection drops automatically. Clients reconnect and resume from where they left off with no lost tokens. - [Tool calling](https://ably.com/docs/ai-transport/features/tool-calling.md): Stream tool invocations and results through Ably AI Transport. Server-executed and client-executed tools with persistent state. - [Token streaming](https://ably.com/docs/ai-transport/features/token-streaming.md): Stream AI-generated tokens to clients in realtime using AI Transport, with support for message-per-response and message-per-token patterns. - [Get started with the Core SDK](https://ably.com/docs/ai-transport/getting-started/core-sdk.md): Build a streaming AI chat app using AI Transport's core React hooks. Full access to the conversation tree, branching, and pagination. - [Vercel AI SDK](https://ably.com/docs/ai-transport/framework-guides/vercel-ai-sdk.md): Understand how Ably AI Transport integrates with the Vercel AI SDK to add durable sessions, multi-device sync, and bidirectional control to your chat application. - [Get started with Vercel AI SDK](https://ably.com/docs/ai-transport/getting-started/vercel-ai-sdk.md): Build a streaming AI chat app with Vercel AI SDK and Ably AI Transport in 5 minutes. Durable sessions, multi-device sync, and cancellation out of the box. - [Conversation tree](https://ably.com/docs/ai-transport/internals/conversation-tree.md): How AI Transport maintains a branching conversation structure. Serial ordering, sibling groups, fork chains, and flatten algorithm. - [Codec architecture](https://ably.com/docs/ai-transport/internals/codec-architecture.md): How the AI Transport codec bridges domain events to Ably messages. Encoder, decoder, accumulator, and lifecycle tracker internals. - [Internals](https://ably.com/docs/ai-transport/internals.md): Under the hood of Ably AI Transport. Wire protocol, codec architecture, conversation tree, and transport patterns. - [Transport patterns](https://ably.com/docs/ai-transport/internals/transport-patterns.md): Internal transport components in AI Transport. StreamRouter, TurnManager, pipeStream, and cancel routing. - [Wire protocol](https://ably.com/docs/ai-transport/internals/wire-protocol.md): The Ably channel wire format used by AI Transport. Headers, lifecycle events, content messages, and message identity. ## General ### Documentation - [Autocomplete](https://ably.com/docs/cli/autocomplete.md): Display autocomplete installation instructions for the Ably CLI. - [Environment variables](https://ably.com/docs/cli/env.md): Show the reference for environment variables supported by the Ably CLI. - [Init](https://ably.com/docs/cli/init.md): Set up the Ably CLI in a single command: install, authenticate, and install Agent Skills into AI coding tools. - [Interactive](https://ably.com/docs/cli/interactive.md): Launch an interactive Ably CLI shell. - [Login](https://ably.com/docs/cli/login.md): Log in to your Ably account using the CLI. - [Help](https://ably.com/docs/cli/help.md): Display help information for Ably CLI commands. - [Version](https://ably.com/docs/cli/version.md): Display the version of the Ably CLI. - [Status](https://ably.com/docs/cli/status.md): Check the status of Ably services using the CLI. - [Ably CLI](https://ably.com/docs/cli.md): Command-line interface for the Ably realtime messaging platform. - [Accounts current](https://ably.com/docs/cli/accounts/current.md): Show the current Ably account using the CLI. - [Accounts](https://ably.com/docs/cli/accounts.md): Manage Ably accounts and configured access tokens using the CLI. - [Accounts list](https://ably.com/docs/cli/accounts/list.md): List all locally configured Ably accounts using the CLI. - [Accounts logout](https://ably.com/docs/cli/accounts/logout.md): Log out from an Ably account using the CLI. - [Accounts login](https://ably.com/docs/cli/accounts/login.md): Log in to your Ably account using the CLI. - [Accounts switch](https://ably.com/docs/cli/accounts/switch.md): Switch to a different Ably account using the CLI. - [Apps create](https://ably.com/docs/cli/apps/create.md): Create a new Ably application using the CLI. - [Apps delete](https://ably.com/docs/cli/apps/delete.md): Permanently delete an Ably application using the CLI. - [Apps current](https://ably.com/docs/cli/apps/current.md): Show the currently selected Ably application using the CLI. - [Apps](https://ably.com/docs/cli/apps.md): Manage your Ably applications using the CLI. - [Apps list](https://ably.com/docs/cli/apps/list.md): List all Ably applications in the current account using the CLI. - [Apps switch](https://ably.com/docs/cli/apps/switch.md): Switch to a different Ably application using the CLI. - [Apps update](https://ably.com/docs/cli/apps/update.md): Update the name or TLS setting of an Ably application using the CLI. - [Auth](https://ably.com/docs/cli/auth.md): Manage authentication, API keys, and tokens using the CLI. - [Auth issue-ably-token](https://ably.com/docs/cli/auth/issue-ably-token.md): Create an Ably Token with specified capabilities using the CLI. - [Auth issue-jwt-token](https://ably.com/docs/cli/auth/issue-jwt-token.md): Create an Ably JWT token with specified capabilities using the CLI. - [Auth revoke-token](https://ably.com/docs/cli/auth/revoke-token.md): Revoke Ably tokens by client ID or revocation key using the CLI. - [Bench publisher](https://ably.com/docs/cli/bench/publisher.md): Run a publisher benchmark test using the Ably CLI. - [Bench](https://ably.com/docs/cli/bench.md): Performance benchmarking commands. - [Bench subscriber](https://ably.com/docs/cli/bench/subscriber.md): Run a subscriber benchmark test using the Ably CLI. - [Channels append](https://ably.com/docs/cli/channels/append.md): Append data to a message on an Ably Pub/Sub channel using the CLI. - [Channels delete](https://ably.com/docs/cli/channels/delete.md): Delete a message on an Ably Pub/Sub channel using the CLI. - [Channels batch-publish](https://ably.com/docs/cli/channels/batch-publish.md): Publish a message to multiple Ably Pub/Sub channels at once using the CLI. - [Channels](https://ably.com/docs/cli/channels.md): Interact with Ably Pub/Sub channels using the CLI. - [Channels history](https://ably.com/docs/cli/channels/history.md): Retrieve message history for an Ably Pub/Sub channel using the CLI. - [Channels list](https://ably.com/docs/cli/channels/list.md): List active channels using the Ably CLI. - [Channels inspect](https://ably.com/docs/cli/channels/inspect.md): Open the Ably dashboard to inspect a specific channel using the CLI. - [Channels update](https://ably.com/docs/cli/channels/update.md): Update a message on an Ably Pub/Sub channel using the CLI. - [Channels publish](https://ably.com/docs/cli/channels/publish.md): Publish a message to an Ably Pub/Sub channel using the CLI. - [Config](https://ably.com/docs/cli/config.md): Manage Ably CLI configuration. - [Config show](https://ably.com/docs/cli/config/show.md): Display the contents of the Ably CLI config file. - [Channels subscribe](https://ably.com/docs/cli/channels/subscribe.md): Subscribe to messages on one or more Ably Pub/Sub channels using the CLI. - [Config path](https://ably.com/docs/cli/config/path.md): Print the path to the Ably CLI config file. - [Connections test](https://ably.com/docs/cli/connections/test.md): Test connection to Ably. - [Integrations create](https://ably.com/docs/cli/integrations/create.md): Create an integration rule using the Ably CLI. - [Connections](https://ably.com/docs/cli/connections.md): Test connections to Ably. - [Integrations delete](https://ably.com/docs/cli/integrations/delete.md): Delete an integration rule using the Ably CLI. - [Integrations get](https://ably.com/docs/cli/integrations/get.md): Get an integration rule by ID using the Ably CLI. - [Integrations list](https://ably.com/docs/cli/integrations/list.md): List all integration rules using the Ably CLI. - [Integrations](https://ably.com/docs/cli/integrations.md): Manage Ably integrations with external services. - [Integrations update](https://ably.com/docs/cli/integrations/update.md): Update an integration rule using the Ably CLI. - [Logs history](https://ably.com/docs/cli/logs/history.md): Retrieve application log history using the Ably CLI. - [Logs subscribe](https://ably.com/docs/cli/logs/subscribe.md): Subscribe to live app logs using the Ably CLI. - [Queues create](https://ably.com/docs/cli/queues/create.md): Create a queue using the Ably CLI. - [Logs](https://ably.com/docs/cli/logs.md): Stream and retrieve logs from Ably using the CLI. - [Queues delete](https://ably.com/docs/cli/queues/delete.md): Delete a queue using the Ably CLI. - [Push](https://ably.com/docs/cli/push.md): Manage push notifications using the Ably CLI. - [Queues list](https://ably.com/docs/cli/queues/list.md): List all queues using the Ably CLI. - [Push batch-publish](https://ably.com/docs/cli/push/batch-publish.md): Publish push notifications to multiple recipients in a batch using the Ably CLI. - [Push publish](https://ably.com/docs/cli/push/publish.md): Publish a push notification to a device, client, or channel using the Ably CLI. - [Queues](https://ably.com/docs/cli/queues.md): Manage Ably queues. - [Rooms list](https://ably.com/docs/cli/rooms/list.md): List active Ably Chat rooms using the CLI. - [Spaces create](https://ably.com/docs/cli/spaces/create.md): Initialize an Ably Space without entering it using the CLI. - [Spaces subscribe](https://ably.com/docs/cli/spaces/subscribe.md): Subscribe to member and location update events in an Ably Space using the CLI. - [Spaces get](https://ably.com/docs/cli/spaces/get.md): Get the current state of an Ably Space using the CLI. - [Rooms](https://ably.com/docs/cli/rooms.md): Interact with Ably Chat rooms using the CLI. - [Spaces list](https://ably.com/docs/cli/spaces/list.md): List active Ably Spaces using the CLI. - [Spaces](https://ably.com/docs/cli/spaces.md): Interact with Ably Spaces using the CLI. - [Stats account](https://ably.com/docs/cli/stats/account.md): Get account-level statistics with optional live updates using the CLI. - [Stats](https://ably.com/docs/cli/stats.md): View statistics for your Ably account or apps. - [Stats app](https://ably.com/docs/cli/stats/app.md): Get app-level statistics with optional live updates using the CLI. - [Support contact](https://ably.com/docs/cli/support/contact.md): Contact Ably for assistance using the CLI. - [Support ask](https://ably.com/docs/cli/support/ask.md): Ask a question to the Ably AI agent for help using the CLI. - [Support](https://ably.com/docs/cli/support.md): Get support and help from Ably. - [Apps rules create](https://ably.com/docs/cli/apps/rules/create.md): Create a channel rule for an Ably application using the CLI. - [Apps rules update](https://ably.com/docs/cli/apps/rules/update.md): Update a channel rule for an Ably application using the CLI. - [Apps rules delete](https://ably.com/docs/cli/apps/rules/delete.md): Delete a channel rule from an Ably application using the CLI. - [Apps rules list](https://ably.com/docs/cli/apps/rules/list.md): List channel rules for an Ably application using the CLI. - [Auth keys create](https://ably.com/docs/cli/auth/keys/create.md): Create a new API key for an Ably app using the CLI. - [Auth keys current](https://ably.com/docs/cli/auth/keys/current.md): Show the current API key for the selected Ably app using the CLI. - [Auth keys list](https://ably.com/docs/cli/auth/keys/list.md): List all API keys for an Ably app using the CLI. - [Auth keys revoke](https://ably.com/docs/cli/auth/keys/revoke.md): Permanently revoke an API key using the CLI. - [Auth keys get](https://ably.com/docs/cli/auth/keys/get.md): Get details for a specific API key using the CLI. - [Auth keys switch](https://ably.com/docs/cli/auth/keys/switch.md): Switch to a different API key for the current Ably app using the CLI. - [Auth keys update](https://ably.com/docs/cli/auth/keys/update.md): Update the name or capabilities of an API key using the CLI. - [Channels annotations get](https://ably.com/docs/cli/channels/annotations/get.md): Get annotations for an Ably Pub/Sub channel message using the CLI. - [Channels annotations publish](https://ably.com/docs/cli/channels/annotations/publish.md): Publish an annotation on an Ably Pub/Sub channel message using the CLI. - [Channels annotations subscribe](https://ably.com/docs/cli/channels/annotations/subscribe.md): Subscribe to annotations on an Ably Pub/Sub channel using the CLI. - [Channels occupancy get](https://ably.com/docs/cli/channels/occupancy/get.md): Get current occupancy for an Ably Pub/Sub channel using the CLI. - [Channels annotations delete](https://ably.com/docs/cli/channels/annotations/delete.md): Delete an annotation from an Ably Pub/Sub channel message using the CLI. - [Channels occupancy subscribe](https://ably.com/docs/cli/channels/occupancy/subscribe.md): Subscribe to occupancy updates on an Ably Pub/Sub channel using the CLI. - [Channels presence enter](https://ably.com/docs/cli/channels/presence/enter.md): Enter presence on an Ably Pub/Sub channel using the CLI. - [Channels presence get](https://ably.com/docs/cli/channels/presence/get.md): Get all current presence members on an Ably Pub/Sub channel using the CLI. - [Logs channel-lifecycle subscribe](https://ably.com/docs/cli/logs/channel-lifecycle/subscribe.md): Stream logs from the channel lifecycle meta channel using the Ably CLI. - [Channels presence subscribe](https://ably.com/docs/cli/channels/presence/subscribe.md): Subscribe to presence events on an Ably Pub/Sub channel using the CLI. - [Logs connection-lifecycle history](https://ably.com/docs/cli/logs/connection-lifecycle/history.md): Retrieve connection lifecycle log history using the Ably CLI. - [Push channels list-channels](https://ably.com/docs/cli/push/channels/list-channels.md): List channels with push subscriptions using the Ably CLI. - [Logs push subscribe](https://ably.com/docs/cli/logs/push/subscribe.md): Stream logs from the push notifications meta channel using the Ably CLI. - [Logs push history](https://ably.com/docs/cli/logs/push/history.md): Retrieve push notification log history using the Ably CLI. - [Logs connection-lifecycle subscribe](https://ably.com/docs/cli/logs/connection-lifecycle/subscribe.md): Subscribe to live connection lifecycle logs using the Ably CLI. - [Push channels list](https://ably.com/docs/cli/push/channels/list.md): List push channel subscriptions using the Ably CLI. - [Push channels remove-where](https://ably.com/docs/cli/push/channels/remove-where.md): Remove push channel subscriptions matching filter criteria using the Ably CLI. - [Push channels remove](https://ably.com/docs/cli/push/channels/remove.md): Remove a push channel subscription using the Ably CLI. - [Push config clear-apns](https://ably.com/docs/cli/push/config/clear-apns.md): Clear APNs push notification configuration for an Ably app using the CLI. - [Push channels save](https://ably.com/docs/cli/push/channels/save.md): Subscribe a device or client to push notifications on a channel using the Ably CLI. - [Push config clear-fcm](https://ably.com/docs/cli/push/config/clear-fcm.md): Clear FCM push notification configuration for an Ably app using the CLI. - [Push config set-apns](https://ably.com/docs/cli/push/config/set-apns.md): Configure APNs push notifications for an Ably app using the CLI. - [Push config show](https://ably.com/docs/cli/push/config/show.md): Show push notification configuration for an Ably app using the CLI. - [Push devices list](https://ably.com/docs/cli/push/devices/list.md): List push device registrations using the Ably CLI. - [Push config set-fcm](https://ably.com/docs/cli/push/config/set-fcm.md): Configure FCM push notifications for an Ably app using the CLI. - [Push devices get](https://ably.com/docs/cli/push/devices/get.md): Get details of a push device registration using the Ably CLI. - [Push devices remove-where](https://ably.com/docs/cli/push/devices/remove-where.md): Remove push device registrations matching filter criteria using the Ably CLI. - [Push devices remove](https://ably.com/docs/cli/push/devices/remove.md): Remove a push device registration using the Ably CLI. - [Push devices save](https://ably.com/docs/cli/push/devices/save.md): Register or update a push device using the Ably CLI. - [Rooms messages delete](https://ably.com/docs/cli/rooms/messages/delete.md): Delete a message in an Ably Chat room using the CLI. - [Rooms messages history](https://ably.com/docs/cli/rooms/messages/history.md): Get historical messages from an Ably Chat room using the CLI. - [Rooms messages send](https://ably.com/docs/cli/rooms/messages/send.md): Send a message to an Ably Chat room using the CLI. - [Rooms messages subscribe](https://ably.com/docs/cli/rooms/messages/subscribe.md): Subscribe to messages in one or more Ably Chat rooms using the CLI. - [Rooms messages update](https://ably.com/docs/cli/rooms/messages/update.md): Update a message in an Ably Chat room using the CLI. - [Rooms occupancy get](https://ably.com/docs/cli/rooms/occupancy/get.md): Get current occupancy metrics for an Ably Chat room using the CLI. - [Rooms occupancy subscribe](https://ably.com/docs/cli/rooms/occupancy/subscribe.md): Subscribe to real-time occupancy metrics for an Ably Chat room using the CLI. - [Rooms presence enter](https://ably.com/docs/cli/rooms/presence/enter.md): Enter presence in an Ably Chat room using the CLI. - [Rooms presence get](https://ably.com/docs/cli/rooms/presence/get.md): Get current presence members in an Ably Chat room using the CLI. - [Rooms presence subscribe](https://ably.com/docs/cli/rooms/presence/subscribe.md): Subscribe to presence events in an Ably Chat room using the CLI. - [Rooms reactions send](https://ably.com/docs/cli/rooms/reactions/send.md): Send a reaction in an Ably Chat room using the CLI. - [Rooms reactions subscribe](https://ably.com/docs/cli/rooms/reactions/subscribe.md): Subscribe to reactions in an Ably Chat room using the CLI. - [Spaces cursors get](https://ably.com/docs/cli/spaces/cursors/get.md): Get all current cursors in an Ably Space using the CLI. - [Spaces cursors set](https://ably.com/docs/cli/spaces/cursors/set.md): Set a cursor with position data in an Ably Space using the CLI. - [Spaces cursors subscribe](https://ably.com/docs/cli/spaces/cursors/subscribe.md): Subscribe to cursor movements in an Ably Space using the CLI. - [Rooms typing keystroke](https://ably.com/docs/cli/rooms/typing/keystroke.md): Send a typing indicator in an Ably Chat room using the CLI. - [Rooms typing subscribe](https://ably.com/docs/cli/rooms/typing/subscribe.md): Subscribe to typing indicators in an Ably Chat room using the CLI. - [Spaces locations get](https://ably.com/docs/cli/spaces/locations/get.md): Get all current locations in an Ably Space using the CLI. - [Spaces locations set](https://ably.com/docs/cli/spaces/locations/set.md): Set location in an Ably Space using the CLI. - [Spaces locations subscribe](https://ably.com/docs/cli/spaces/locations/subscribe.md): Subscribe to location updates for members in an Ably Space using the CLI. - [Spaces locks acquire](https://ably.com/docs/cli/spaces/locks/acquire.md): Acquire a lock in an Ably Space using the CLI. - [Spaces locks get](https://ably.com/docs/cli/spaces/locks/get.md): Get a lock or all locks in an Ably Space using the CLI. - [Spaces locks subscribe](https://ably.com/docs/cli/spaces/locks/subscribe.md): Subscribe to lock events in an Ably Space using the CLI. - [Spaces members get](https://ably.com/docs/cli/spaces/members/get.md): Get all members in an Ably Space using the CLI. - [Spaces members enter](https://ably.com/docs/cli/spaces/members/enter.md): Enter an Ably Space and remain present until terminated using the CLI. - [Spaces members subscribe](https://ably.com/docs/cli/spaces/members/subscribe.md): Subscribe to member presence events in an Ably Space using the CLI. - [Spaces occupancy get](https://ably.com/docs/cli/spaces/occupancy/get.md): Get current occupancy metrics for an Ably Space using the CLI. - [Spaces occupancy subscribe](https://ably.com/docs/cli/spaces/occupancy/subscribe.md): Subscribe to occupancy events on an Ably Space using the CLI. - [Rooms messages reactions remove](https://ably.com/docs/cli/rooms/messages/reactions/remove.md): Remove a reaction from a message in an Ably Chat room using the CLI. - [Rooms messages reactions send](https://ably.com/docs/cli/rooms/messages/reactions/send.md): Send a reaction to a message in an Ably Chat room using the CLI. - [Rooms messages reactions subscribe](https://ably.com/docs/cli/rooms/messages/reactions/subscribe.md): Subscribe to message reactions in an Ably Chat room using the CLI. ### FAQs - [Push notifications FAQs](https://ably.com/docs/faq/push-faqs.md): Frequently asked questions about Ably's push notification service, including debugging, configuration, and troubleshooting guides. - [Pub/Sub FAQs](https://ably.com/docs/faq.md): Complete collection of Ably FAQ answers covering SDK issues, connection troubleshooting, configuration problems, and technical solutions.