Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
53cc3f6
Updates acc overview page
franrob-projects Dec 29, 2025
5d43cb1
Updates sso page
franrob-projects Dec 29, 2025
37021d5
Updates 2fa page
franrob-projects Dec 29, 2025
cf32c91
Updates table on enterprise customization page
franrob-projects Dec 29, 2025
2d0516f
Updates Programmatic management with Control API page
franrob-projects Dec 29, 2025
c6c7b8d
Updates App management overview page
franrob-projects Dec 29, 2025
590363f
Updates App management overview page (part 2)
franrob-projects Dec 29, 2025
2e6f0fd
Adds new folder and files for products
franrob-projects Dec 29, 2025
601f134
Adds product > pub/sub page
franrob-projects Dec 29, 2025
3b0e04f
Updates dev console to web client page
franrob-projects Dec 29, 2025
f291a50
Adds product > push page
franrob-projects Dec 29, 2025
ee4d315
Adds product > chat page
franrob-projects Dec 29, 2025
56b3413
Adds product > spaces page
franrob-projects Dec 29, 2025
d9094f6
Adds product > liveobjects page
franrob-projects Dec 29, 2025
d14e2c3
Adds product > livesync page
franrob-projects Dec 29, 2025
dbd1562
Adds new pages for monitoring and config in nav
franrob-projects Dec 29, 2025
f557d28
Updates queues page
franrob-projects Dec 29, 2025
5314c75
Updates connections page
franrob-projects Dec 29, 2025
f249d26
Adds logs page
franrob-projects Dec 29, 2025
e91f95b
Adds reports page
franrob-projects Dec 29, 2025
1931df6
Adds integrations page
franrob-projects Dec 29, 2025
7150824
Adds api-keys page
franrob-projects Dec 29, 2025
f1b2c82
Adds deletes old page
franrob-projects Dec 29, 2025
5e78ffc
Adds settings page
franrob-projects Dec 29, 2025
e82a276
Deletes uneeded files
franrob-projects Dec 29, 2025
5acee8f
Adds title ids
franrob-projects Dec 29, 2025
c6b5ae7
Fixes links
franrob-projects Dec 30, 2025
1abe95a
Resolve merge conflicts between FTF-444-new-dashboard-docs and main
franrob-projects Jan 9, 2026
e9bc78e
Feedback
franrob-projects Jan 13, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 72 additions & 16 deletions src/data/nav/platform.ts
Original file line number Diff line number Diff line change
Expand Up @@ -262,42 +262,98 @@ export default {
link: '/docs/platform/account/enterprise-customization',
},
{
name: 'App management',
name: 'Programmatic management using Control API',
link: '/docs/platform/account/control-api',
},
],
},
{
name: 'App management',
pages: [
{
name: 'Overview',
link: '/docs/platform/account/app',
index: true,
},
{
name: 'Products',
pages: [
{
name: 'Overview',
link: '/docs/platform/account/app',
index: true,
name: 'Pub/Sub',
link: '/docs/platform/account/app/products/pubsub',
},
{
name: 'Stats',
link: '/docs/platform/account/app/stats',
name: 'Chat',
link: '/docs/platform/account/app/products/chat',
},
{
name: 'API keys',
link: '/docs/platform/account/app/api',
name: 'Spaces',
link: '/docs/platform/account/app/products/spaces',
},
{
name: 'LiveObjects',
link: '/docs/platform/account/app/products/liveobjects',
},
{
name: 'LiveSync',
link: '/docs/platform/account/app/products/livesync',
},
{
name: 'Push notifications',
link: '/docs/platform/account/app/products/push-notifications',
},
],
},
{
name: 'Platform',
pages: [
{
name: 'Connections',
link: '/docs/platform/account/app/platform/connections',
},
{
name: 'Queues',
link: '/docs/platform/account/app/queues',
link: '/docs/platform/account/app/platform/queues',
},
],
},
{
name: 'Monitoring',
pages: [
{
name: 'Logs',
link: '/docs/platform/account/app/monitoring/logs',
},
{
name: 'Notifications',
link: '/docs/platform/account/app/notifications',
name: 'Reports',
link: '/docs/platform/account/app/monitoring/reports',
},
],
},
{
name: 'Configuration',
pages: [
{
name: 'Rules',
link: '/docs/platform/account/app/configuration/rules',
},
{
name: 'Dev console',
link: '/docs/platform/account/app/console',
name: 'Integrations',
link: '/docs/platform/account/app/configuration/integrations',
},
{
name: 'API keys',
link: '/docs/platform/account/app/configuration/api-keys',
},
{
name: 'Settings',
link: '/docs/platform/account/app/settings',
link: '/docs/platform/account/app/configuration/settings',
},
],
},
{
name: 'Programmatic management using Control API',
link: '/docs/platform/account/control-api',
name: 'Web client',
link: '/docs/platform/account/app/client',
},
],
},
Expand Down
Binary file not shown.
Binary file not shown.
Binary file modified src/images/content/screenshots/dash/create-app.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified src/images/content/screenshots/dash/dash-tabs.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified src/images/content/screenshots/dash/your-apps.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 6 additions & 4 deletions src/pages/docs/platform/account/2fa.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,14 @@ redirect_from:

Two-factor authentication (2FA) is an authentication process requiring users to utilize two different forms of verification. 2FA for your Ably account requires your password and a security token sent to your mobile phone.

Access your [account settings](https://ably.com/accounts/any/user/edit) to configure two-factor authentication for your Ably account.

## Enable 2FA <a id="enable"/>

To enable 2FA for your own user login:

1. Log in to your [account](https://ably.com/accounts/any).
2. Select **My Settings** from the account navigation dropdown.
2. Select **Profile settings** from the user profile dropdown.
3. Toggle **Enable Two-Factor Authentication** under the **Two-factor authentication** section.
* Re-enter your password as prompted.
4. Select your **Country**.
Expand All @@ -28,7 +30,7 @@ To enable 2FA for your own user login:
To disable 2FA for your own user login:

1. Log in to your [account](https://ably.com/accounts/any).
2. Select **My Settings** from the account navigation dropdown.
2. Select **Profile settings** from the user profile dropdown.
3. Click the **Disable Two-Factor Authentication** button.
* Re-enter your password as prompted.

Expand All @@ -51,7 +53,7 @@ The account owner must already have 2FA enabled for their own login before they
To enforce 2FA for all users:

1. Log in to your [account](https://ably.com/accounts/any).
2. Select **Settings** from the account navigation dropdown.
2. Select **Settings** from the user profile dropdown.
3. Toggle **Require Two-Factor Authentication for all account users** under the **Authentication Settings** section.
4. **Save** the authentication settings.

Expand All @@ -60,6 +62,6 @@ To enforce 2FA for all users:
To remove the requirement for all users to authenticate with 2FA:

1. Log in to your [account](https://ably.com/accounts/any).
2. Select **Settings** from the account navigation dropdown.
2. Select **Settings** from the user profile dropdown.
3. Toggle **Require Two-Factor Authentication for all account users** under the **Authentication Settings** section.
4. **Save** the authentication settings.
79 changes: 79 additions & 0 deletions src/pages/docs/platform/account/app/client.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
---
title: Web client
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you can just change the page title rather than the URL for this one for now.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure what you mean here sorry 🤔

meta_description: "Test and debug your application using the browser-based web client for realtime messaging, channel monitoring, and event tracking."
meta_keywords: "Ably web client, browser testing, realtime monitoring, connection status changes, channel activity, event logs"
redirect_from:
- /docs/account/app/console
---

The web client provides a browser-based interface for testing and debugging your realtime application. Access the web client through your [app dashboard](https://ably.com/accounts/any/apps/any/console) under the Console section. It offers realtime insights into application-wide events, such as connection status changes and channel activity. These features enable you to:

* Observe changes in connection status across the application.
* View activity on specific channels, including message traffic and channel events.
* Examine event logs to troubleshoot your application.

## Application-wide events interface <a id="application-events"/>

The application-wide events interface allows you to monitor your application's health and activity in realtime.

The following explains the realtime monitoring tools in the application-wide events interface:

| Field | Description |
| ----- | ----------- |
| API key | The API key to access and view events within the app. |
| Average application-wide events per second (p/s) | This metric shows the average number of events occurring per second across your application. For example, if the current rate is 0, no active events are being processed. |
| Event log table | The event log table displays a record of events related to the current client's connection status. This table can be used to debug potential issues in your application. |

## Message auditing and logging <a id="message-auditing"/>

The web client displays messages in realtime for debugging and testing purposes, but does not provide persistent message auditing or logging capabilities. Ably does not currently offer native functionality to view historical messages filtered by specific channels or client IDs for auditing purposes.

If you need to audit or log messages by channel or client ID, implement this functionality on the application side. Consider using:

- [Webhooks](/docs/platform/integrations/webhooks) to send message events to your logging system
- [Message queues](/docs/platform/integrations/queues) to process and store message data
- Client-side logging in your application code

For native message auditing features, [contact support](mailto:[email protected]) to discuss requirements.

## Channels <a id="channels"/>

The following is a step-by-step instructions for connecting to a channel, publishing messages.

### Connect to a channel <a id="connect-channel"/>

The following explains how to connect to a channel:

| Step | Action |
| ---- | ------ |
| Enter a channel name | In the channel name field, choose a name (e.g get-started). |
| Attach to channel | Click the **attach to channel** button. This connects you to the **get-started** channel, enabling you to start publishing or subscribing to messages. |
| Monitor channel status | The interface will display the channel status as **pending** and then **attached** once connected, confirming that the channel is ready for interaction.|

### Publish a message <a id="publish-message"/>

The following explains how to publish a message:

| Step | Action |
| ---- | ------ |
| Message data | In the **message data** field, type a message (e.g. example). |
| Publish message | Click the **publish message** button to send the message to the **get-started** channel. |
| View the message | If you have a subscriber , it will receive and display the message in the console. |

The following explains how to interact with presence:

| Step | Action |
| ---- | ------ |
| Client ID | Enter a unique client ID to simulate joining the presence of the channel. |
| Enter presence | Click **enter presence** to indicate that this client is now in the channel. |
| Monitor presence | The interface will list all clients in the channel under **presence members**. |

### Control the channel <a id="control-channel"/>

The following explains how to control the channel in the web client:

| Step | Action |
| ---- | ------ |
| Detach | Click **detach** to disconnect from the channel. |
| Pause | Use **pause** to temporarily stop receiving messages. |
| Clear | Click **clear** to clear the channel data or logs from the interface. |
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ redirect_from:
- /docs/account/app/api
---

The API keys tab lists all API keys associated with your account and provides information on each key's capabilities and restrictions. You can [create a new API key](#create) and manage an existing one.
The API keys tab lists all API keys associated with your account and provides information on each key's capabilities and restrictions. Manage your API keys in the [app dashboard](https://ably.com/accounts/any/apps/any/settings/keys) under the API Keys section. You can [create a new API key](#create) and manage an existing one.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This URL for the API keys isn't correct.


<Aside data-type='note'>
Before setting up multiple API keys with different permissions or sharing API keys with untrusted parties, consider using [token authentication](/docs/auth/token) instead. Token authentication provides more flexible access control and better security for client-side applications.
</Aside>

## Create a new API key <a id="create"/>
## Create a new API key <a id="create"/> <a id="create"/>

The following steps create a new API Key:

Expand All @@ -22,22 +22,22 @@ The following steps create a new API Key:

To manage an API key: set [capabilities](/docs/auth/capabilities), define resource restrictions, use revocable tokens for security, and adjust key settings as needed.

### Capabilities
### Capabilities <a id="capabilities"/>

[Capabilities](/docs/auth/capabilities) provide permissions required for managing message flow, user presence, notifications, channel information, and access controls, these depend on what you require the API key to have access to:

| Capability | Description |
| ---------- | ----------- |
| **Publish** | Allow clients to publish messages to channels. |
| **Subscribe** | Allow clients to receive messages and presence state changes. |
| **History** | Allow clients to retrieve message and presence history. |
| **Presence** | Allow clients to register presence on a channel. |
| **Channel metadata** | Allow clients to query channel metadata. |
| **Push admin and push-subscribe** | Allow clients to manage and subscribe to push notifications. |
| **Statistics** | Allow clients to query usage statistics. |
| **Privileged headers** | Allow clients to set privileged headers, such as to skip channel rules. |
| Publish | Allow clients to publish messages to channels. |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is missing quite a few capabilities that have been added since these were written.

| Subscribe | Allow clients to receive messages and presence state changes. |
| History | Allow clients to retrieve message and presence history. |
| Presence | Allow clients to register presence on a channel. |
| Channel metadata | Allow clients to query channel metadata. |
| Push admin and push-subscribe | Allow clients to manage and subscribe to push notifications. |
| Statistics | Allow clients to query usage statistics. |
| Privileged headers | Allow clients to set privileged headers, such as to skip channel rules. |

### Set resource restrictions
### Set resource restrictions <a id="resource-restrictions"/>

Set resource restrictions to control access to channels and queues, ranging from unrestricted access to specific, rule-based permissions:

Expand All @@ -54,14 +54,14 @@ When specifying selected channels and queues, you can provide a comma-separated
A single API key cannot support complex permission combinations, such as publish access on one channel and subscribe access on another. For such requirements, use [token authentication](/docs/auth/token) instead.
</Aside>

### Revocable tokens
### Revocable tokens <a id="revocable-tokens"/>

[Revocable tokens](/docs/auth/revocation#revocable-tokens) enhance security by allowing shorter token lifetimes and the ability to revoke tokens issued via the API key.

| Option | Description |
| ------ | ----------- |
| Revocable tokens | Implement security measures by setting shorter token lifetimes and enabling the ability to revoke tokens issued by the API key. |

### Change your API key settings
### Change your API key settings <a id="change-settings"/>

Click **Settings** on the required API key to change its settings. The same settings apply as when creating a new API key.
66 changes: 66 additions & 0 deletions src/pages/docs/platform/account/app/configuration/integrations.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
title: Integrations
meta_description: "Configure and manage integrations within the Ably dashboard."
meta_keywords: "Integrations, configuration, webhooks, dashboard, Ably"
---

The Integrations section in your Ably dashboard provides centralized management for connecting your Ably application with external services and systems. Configure and manage your integrations in the [app dashboard](https://ably.com/accounts/any/apps/any/settings/integrations) under the Integrations section. This interface enables you to configure webhooks, set up data streaming, and manage third-party integrations to extend your application's functionality.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this URL should have /settings/ in it .


## Integration Rules <a id="integration-rules"/>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we simplify this page and just link off to the integrations section for each integration?


Integration Rules enable you to configure how your Ably data flows to external systems and services.

### Webhooks and serverless functions <a id="webhooks-serverless"/>

Webhooks allow your serverless functions or your own servers to be invoked following any events on Ably. Ably Queues provide a scalable way to consume realtime data from your servers. Firehose allows you to stream your data into 3rd party systems such as Kinesis or Kafka.

### Integration capabilities <a id="integration-capabilities"/>

| Integration type | Description | Use cases |
|---|---|---|
| Webhooks | Trigger serverless functions or custom servers on Ably events | Event-driven processing, notifications, custom business logic |
| Ably Queues | Scalable realtime data consumption | Message processing, data pipelines, server-side handling |
| Firehose | Stream data to external systems | Analytics, data warehousing, integration with Kinesis or Kafka |

### Permission requirements <a id="permission-requirements"/>

Integration Rules require admin-level permissions to create or edit. If you see a permission message, please contact the account owner to assign admin privileges to your user account.

## Incoming Webhooks Setup <a id="incoming-webhooks"/>

Incoming webhooks provide a way to publish data into Ably from external sources and systems.

### Incoming webhook functionality <a id="webhook-functionality"/>

Incoming webhooks are used to publish data into Ably. The generated URL can be used in code or to connect other 3rd party systems to scale out publishing of events.

### Configuration requirements <a id="configuration-requirements"/>

Similar to Integration Rules, Incoming Webhooks require admin permissions to create or edit. Contact your account owner if you need access to configure incoming webhooks.

### Current webhook status <a id="webhook-status"/>

The interface displays the current status of your webhook configurations. If no webhooks are currently configured, you'll see a status message indicating this.

## Active integrations <a id="active-integrations"/>

The integrations dashboard displays any currently active integrations and their status.

### Integration management <a id="integration-management"/>

| Integration feature | Description | Available actions |
|---|---|---|
| Integration status | Shows connection state and health | Monitor integration performance |
| Dashboard access | Direct links to external service dashboards | Quick access to integrated services |
| Integration controls | Options to modify or remove integrations | Manage integration lifecycle |

### Example integration: Datadog <a id="datadog-integration"/>

The interface shows sample integration configurations, such as:

### Integration details <a id="integration-details"/>

| Integration | Status | Functionality | Management | Purpose |
|---|---|---|---|---|
| Datadog | Connected | Stream realtime application metrics from Ably into your Datadog dashboard to monitor messages, channels, and connections in use | Dashboard access and removal options | Increase visibility into application performance |

Loading