-
Notifications
You must be signed in to change notification settings - Fork 46
Add standalone access tokens page for new dashboard UI #3291
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
matt423
wants to merge
1
commit into
main
Choose a base branch
from
dx-563-access-tokens
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+63
−33
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,50 @@ | ||
| --- | ||
| title: "Access tokens" | ||
| meta_description: "Create and manage access tokens to authenticate with the Ably Control API and Ably CLI." | ||
| meta_keywords: "access tokens, Control API, Ably CLI, authentication, capabilities" | ||
| --- | ||
|
|
||
| Access tokens authenticate requests to the [Control API](/docs/platform/account/control-api) and the [Ably CLI](/docs/platform/tools/cli). They are scoped to a specific account and grant a configurable set of capabilities. Manage your tokens from the [Access tokens](https://ably.com/users/access_tokens) page in the Ably dashboard. | ||
|
|
||
| ## Create an access token <a id="create"/> | ||
|
|
||
| You must be an account admin to create access tokens. If you don't see the "Create new token" button, contact your account administrator. | ||
|
|
||
| To create a new access token: | ||
|
|
||
| 1. Go to the [Access tokens](https://ably.com/users/access_tokens) page in the Ably dashboard. | ||
| 2. Click **Create new token**. | ||
| 3. Enter a **Name** for the token. This is for your reference only and is not used in API requests. | ||
| 4. Select the **Account** the token is scoped to. This is auto-selected if you only have one account. | ||
| 5. Select the **Capabilities** the token requires. Capabilities are grouped into categories such as Apps, Keys, Rules, Queues, Namespaces, and Statistics. Each category has individual read and write checkboxes, and a "Select all" toggle. | ||
| 6. Click **Create token**. | ||
|
|
||
| <Aside data-type='important'> | ||
| Copy your access token immediately after creation. The full token is only displayed once and cannot be retrieved later. Only the token ID is visible after you navigate away. | ||
| </Aside> | ||
|
|
||
| ## Access token capabilities <a id="capabilities"/> | ||
|
|
||
| Capabilities control which operations the token can perform in the Control API and CLI. The dashboard displays human-readable labels such as "Read App". The raw format such as `read:app` appears in API responses and JWTs. | ||
|
|
||
| | Dashboard label | API capability | Control API | CLI commands | | ||
| | --- | --- | --- | --- | | ||
| | Read App | `read:app` | [List](/docs/api/control-api#tag/apps/paths/~1accounts~1{account_id}~1apps/get) apps | `ably apps list` | | ||
| | Write App | `write:app` | [Create](/docs/api/control-api#tag/apps/paths/~1accounts~1{account_id}~1apps/post), [update](/docs/api/control-api#tag/apps/paths/~1apps~1{id}/patch), and [delete](/docs/api/control-api#tag/apps/paths/~1apps~1{id}/delete) apps | `ably apps create`, `ably apps update`, `ably apps delete` | | ||
| | Read Key | `read:key` | [List](/docs/api/control-api#tag/keys/paths/~1apps~1{app_id}~1keys/get) API keys for an app | `ably auth keys list`, `ably auth keys get` | | ||
| | Write Key | `write:key` | [Create](/docs/api/control-api#tag/keys/paths/~1apps~1{app_id}~1keys/post), [update](/docs/api/control-api#tag/keys/paths/~1apps~1{app_id}~1keys~1{key_id}/patch), and [revoke](/docs/api/control-api#tag/keys/paths/~1apps~1{app_id}~1keys~1{key_id}~1revoke/post) API keys | `ably auth keys create`, `ably auth keys update`, `ably auth keys revoke` | | ||
| | Read Rule | `read:rule` | [List](/docs/api/control-api#tag/rules/paths/~1apps~1{app_id}~1rules/get) and [get](/docs/api/control-api#tag/rules/paths/~1apps~1{app_id}~1rules~1{rule_id}/get) integration rules | `ably integrations list`, `ably integrations get` | | ||
| | Write Rule | `write:rule` | [Create](/docs/api/control-api#tag/rules/paths/~1apps~1{app_id}~1rules/post), [update](/docs/api/control-api#tag/rules/paths/~1apps~1{app_id}~1rules~1{rule_id}/patch), and [delete](/docs/api/control-api#tag/rules/paths/~1apps~1{app_id}~1rules~1{rule_id}/delete) integration rules | `ably integrations create`, `ably integrations update`, `ably integrations delete` | | ||
| | Read Queue | `read:queue` | [List](/docs/api/control-api#tag/queues/paths/~1apps~1{app_id}~1queues/get) queues for an app | `ably queues list` | | ||
| | Write Queue | `write:queue` | [Create](/docs/api/control-api#tag/queues/paths/~1apps~1{app_id}~1queues/post) and [delete](/docs/api/control-api#tag/queues/paths/~1apps~1{app_id}~1queues~1{queue_id}/delete) queues | `ably queues create`, `ably queues delete` | | ||
| | Read Namespace | `read:namespace` | [List](/docs/api/control-api#tag/namespaces/paths/~1apps~1{app_id}~1namespaces/get) channel namespaces for an app | `ably apps channel-rules list` | | ||
| | Write Namespace | `write:namespace` | [Create](/docs/api/control-api#tag/namespaces/paths/~1apps~1{app_id}~1namespaces/post), [update](/docs/api/control-api#tag/namespaces/paths/~1apps~1{app_id}~1namespaces~1{namespace_id}/patch), and [delete](/docs/api/control-api#tag/namespaces/paths/~1apps~1{app_id}~1namespaces~1{namespace_id}/delete) channel namespaces | `ably apps channel-rules create`, `ably apps channel-rules update`, `ably apps channel-rules delete` | | ||
| | Read Stats | `read:stats` | [Account](/docs/api/control-api#tag/accounts/paths/~1accounts~1{id}~1stats/get) and [app](/docs/api/control-api#tag/apps/paths/~1apps~1{id}~1stats/get) statistics | `ably stats account`, `ably stats app` | | ||
|
|
||
| ## Revoke an access token <a id="revoke"/> | ||
|
|
||
| Revoke an access token from the [Access tokens](https://ably.com/users/access_tokens) page by clicking the delete icon next to the token. Revocation is immediate and irreversible. Any requests using that token will fail. | ||
|
|
||
| ## Rate limits <a id="rate-limits"/> | ||
|
|
||
| The Control API limits the number of requests per account and per access token per hour. See [API limits](/docs/platform/pricing/limits#api) for details. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.