- Members: users with access to an account
- Groups: collections of users for easier permission management
- Service Accounts: machine identities for automation
- Policies: permission rules defining allowed/denied actions
- Access Profiles: reusable permission templates
- Assignments: bindings between identities and access profiles
- Personal Access Tokens (PATs): API tokens for your user
- Service Account Tokens (SATs): API tokens for service accounts
Usage
Commands
| Command | Description |
|---|---|
idyl iam access-profile | Manage access profiles |
idyl iam assignment | Manage access assignments |
idyl iam group | Manage groups |
idyl iam member | Manage account members |
idyl iam pat | Manage personal access tokens |
idyl iam policy | Manage policies |
idyl iam service-account | Manage service accounts |
Inherited flags
| Flag | Description |
|---|---|
-a <string>, --account-id <string> | Account ID to use (overrides context) |
-c <string>, --context <string> | Use specific context |
--homedir <string> | Override config directory (default: ~/.idyl) |
-n <string>, --namespace <string> | Namespace to use |
-o <string>, --output <string> | Output format (json|yaml) |
-p <string>, --profile <string> | Override profile |
--realm <string> | Override realm |
--subnet <string> | Override context subnet for this command |
Examples
Subcommand reference
idyl iam access-profile
Manage access profiles.
Access profiles are reusable permission templates that compose multiple policies.
They can be assigned to identities (users, groups, service accounts) to grant
permissions on specific accounts.
Access profiles can also be used to scope tokens (PATs and SATs) to restrict
the permissions of the token holder.
Usage
Aliases
access-profilesap
Commands
| Command | Description |
|---|---|
idyl iam access-profile attach-policy | Add a policy to an access profile |
idyl iam access-profile create | Create a new access profile |
idyl iam access-profile delete | Delete an access profile |
idyl iam access-profile detach-policy | Remove a policy from an access profile |
idyl iam access-profile edit | Edit an access profile |
idyl iam access-profile get | Get access profile details or list all access profiles |
idyl iam access-profile list-policies | List policies attached to an access profile |
Examples
idyl iam access-profile attach-policy
Add a policy to an access profile.
Usage
Flags
| Flag | Description |
|---|---|
--access-profile <string> | Required. Access profile name or ID |
--policy <string> | Required. Policy ID |
Examples
idyl iam access-profile create
Create a new access profile.
Usage
Flags
| Flag | Description |
|---|---|
--description <string> | Description of the access profile |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
--policy-ids <string> | Comma-separated list of policy IDs to attach |
Examples
idyl iam access-profile delete
Delete an access profile by name or ID.
System access profiles cannot be deleted.
Deleting an access profile will remove all assignments using it.
Usage
Flags
| Flag | Description |
|---|---|
-y, --yes | Skip confirmation prompts |
Examples
idyl iam access-profile detach-policy
Remove a policy from an access profile.
Usage
Flags
| Flag | Description |
|---|---|
--access-profile <string> | Required. Access profile name or ID |
--policy <string> | Required. Policy ID |
-y, --yes | Skip confirmation prompts |
Examples
idyl iam access-profile edit
Edit an access profile’s settings.
Only the description can be updated. To modify attached policies, use:
idyl iam access-profile attach-policy/detach-policy
System access profiles cannot be edited.
Usage
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
--set-description <string> | Set the access profile description |
Examples
idyl iam access-profile get
Get details of a specific access profile, or list all access profiles.
With no arguments, lists all access profiles.
With a name or ID argument, gets details of that specific access profile.
Usage
Aliases
listls
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam access-profile list-policies
List all policies attached to an access profile.
Usage
Aliases
ls-policiesget-policies
Flags
| Flag | Description |
|---|---|
--access-profile <string> | Required. Access profile name or ID |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam assignment
Manage access assignments within the current account.
Assignments bind an identity (user, group, or service account) to an access
profile, granting the permissions defined in that profile. The assignment
also specifies a target account where the permissions apply.
Identity formats:
- User email: [email protected]
- Group: group:{group-id}
- Service Account: sa:{service-account-id}
Usage
Aliases
assignments
Commands
| Command | Description |
|---|---|
idyl iam assignment create | Create an assignment |
idyl iam assignment delete | Delete an assignment |
idyl iam assignment get | List assignments |
Examples
idyl iam assignment create
Create a new assignment binding an identity to an access profile.
Identity formats:
- User email: [email protected]
- Group: group:{group-id}
- Service Account: sa:{service-account-id}
Usage
Flags
| Flag | Description |
|---|---|
--access-profile <string> | Required. Access profile ID or name |
--identity <string> | Required. Identity to assign (email, group:id, or sa:id) |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
--target-account-id <string> | Required. Target account ID where permissions apply |
Examples
idyl iam assignment delete
Delete an assignment by ID.
This removes the identity’s permissions granted by this assignment.
Usage
Flags
| Flag | Description |
|---|---|
-y, --yes | Skip confirmation prompts |
Examples
idyl iam assignment get
List all assignments in the current account.
Usage
Aliases
listls
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam group
Manage groups within the current account.
Groups are collections of users that simplify permission management.
Instead of assigning access profiles to individual users, you can assign
them to a group, and all members inherit those permissions.
Usage
Aliases
groups
Commands
| Command | Description |
|---|---|
idyl iam group add-member | Add a member to a group |
idyl iam group create | Create a new group |
idyl iam group delete | Delete a group |
idyl iam group edit | Edit a group |
idyl iam group get | Get group details or list all groups |
idyl iam group list-members | List members of a group |
idyl iam group remove-member | Remove a member from a group |
Examples
idyl iam group add-member
Add a member to a group.
The identity should be an email address. The user must already be a member
of the account.
Usage
Flags
| Flag | Description |
|---|---|
--group <string> | Required. Group name or ID |
--identity <string> | Required. Identity to add |
Examples
idyl iam group create
Create a new group in the current account.
Usage
Flags
| Flag | Description |
|---|---|
--description <string> | Description of the group |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam group delete
Delete a group by name or ID.
This action removes the group and all its member associations.
It does not delete the members themselves.
Usage
Flags
| Flag | Description |
|---|---|
-y, --yes | Skip confirmation prompts |
Examples
idyl iam group edit
Edit a group’s settings.
Only the specified flags are updated; other settings remain unchanged.
Usage
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
--set-description <string> | Set the group description |
--set-name <string> | Set the group name |
Examples
idyl iam group get
Get details of a specific group, or list all groups.
With no arguments, lists all groups.
With a name or ID argument, gets details of that specific group.
Usage
Aliases
listls
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam group list-members
List all members of a group.
Usage
Aliases
ls-membersget-members
Flags
| Flag | Description |
|---|---|
--group <string> | Required. Group name or ID |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam group remove-member
Remove a member from a group.
This removes the user from the group but does not remove them from the account.
Usage
Flags
| Flag | Description |
|---|---|
--group <string> | Required. Group name or ID |
--identity <string> | Required. Identity to remove |
-y, --yes | Skip confirmation prompts |
Examples
idyl iam member
Manage members of the current account.
Members are users who have access to an account. Their permissions are
determined by access profile assignments, not by the membership itself.
Usage
Aliases
members
Commands
| Command | Description |
|---|---|
idyl iam member add | Add a member to the account |
idyl iam member get | List account members |
idyl iam member remove | Remove a member from the account |
Examples
idyl iam member add
Add a member to the current account.
The identity should be an email address. The user must already exist in the
system (i.e., have logged in before).
Usage
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam member get
List all members of the current account.
Usage
Aliases
listls
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam member remove
Remove a member from the current account.
This removes the user’s access to the account but does not delete the user.
The user can be re-added later if needed.
Usage
Flags
| Flag | Description |
|---|---|
-y, --yes | Skip confirmation prompts |
Examples
idyl iam pat
Manage personal access tokens (PATs) for API authentication.
PATs allow you to authenticate to the API without using the interactive login flow.
They are useful for scripts, CI/CD pipelines, and other automation.
Each PAT can optionally be scoped to an access profile for restricted permissions.
If no access profile is specified, the PAT inherits your full permissions.
Usage
Aliases
pats
Commands
| Command | Description |
|---|---|
idyl iam pat create | Create a personal access token |
idyl iam pat get | List personal access tokens |
idyl iam pat revoke | Revoke a personal access token |
Examples
idyl iam pat create
Create a new personal access token.
The token secret is only shown once at creation time. Store it securely.
Usage
Flags
| Flag | Description |
|---|---|
--access-profile <string> | Access profile ID to scope the token |
--description <string> | Description of the token |
--expires <string> | Token expiration (e.g., 24h, 7d, 30d, 365d) |
--name <string> | Required. Name for the token |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam pat get
List all personal access tokens.
Usage
Aliases
listls
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam pat revoke
Revoke a personal access token.
This immediately invalidates the token. Any requests using this token will fail.
Usage
Flags
| Flag | Description |
|---|---|
-y, --yes | Skip confirmation prompts |
Examples
idyl iam policy
Manage IAM policies within the current account.
Policies define what actions are allowed or denied on which resources.
Each policy contains one or more statements with:
- Effect: “allow” or “deny”
- Actions: what can be done (e.g., “deployment:create”, ”*:get”)
- Resources: what it applies to (e.g., “namespace:dev/”, "")
Usage
Aliases
policies
Commands
| Command | Description |
|---|---|
idyl iam policy create | Create a new policy |
idyl iam policy delete | Delete a policy |
idyl iam policy edit | Edit a policy |
idyl iam policy get | Get policy details or list all policies |
Examples
idyl iam policy create
Create a new policy in the current account.
The —statements flag accepts JSON array of policy statements.
Statement format:
{
“effect”: “allow” or “deny”,
“actions”: [“action:type”, …],
“resources”: [“resource:path”, …]
}
Action wildcards: “deployment:”, “:get”, ”:”
Resource wildcards: “namespace:dev/”, “namespace:”, ”*“
Usage
Flags
| Flag | Description |
|---|---|
--description <string> | Description of the policy |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
--statements <string> | Required. JSON array of policy statements |
Examples
idyl iam policy delete
Delete a policy by name or ID.
System policies cannot be deleted.
Usage
Flags
| Flag | Description |
|---|---|
-y, --yes | Skip confirmation prompts |
Examples
idyl iam policy edit
Edit a policy’s settings.
Only the specified flags are updated; other settings remain unchanged.
System policies cannot be edited.
Usage
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
--set-description <string> | Set the policy description |
--set-statements <string> | Set the JSON array of policy statements |
Examples
idyl iam policy get
Get details of a specific policy, or list all policies.
With no arguments, lists all policies.
With a name or ID argument, gets details of that specific policy.
Usage
Aliases
listls
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam service-account
Manage service accounts within the current account.
Service accounts are machine identities used for CI/CD and automation.
Unlike user accounts, they survive employee turnover and provide stable
identities for automated processes.
Permissions are determined by assignments using identity format: sa:{id}
Usage
Aliases
service-accountssa
Commands
| Command | Description |
|---|---|
idyl iam service-account create | Create a new service account |
idyl iam service-account create-token | Create a service account token |
idyl iam service-account delete | Delete a service account |
idyl iam service-account get | Get service account details or list all service accounts |
idyl iam service-account list-tokens | List tokens for a service account |
idyl iam service-account revoke-token | Revoke a service account token |
Examples
idyl iam service-account create
Create a new service account in the current account.
Usage
Flags
| Flag | Description |
|---|---|
--description <string> | Description of the service account |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam service-account create-token
Create a new token for a service account.
The token secret is only shown once at creation time. Store it securely.
Usage
Flags
| Flag | Description |
|---|---|
--access-profile <string> | Access profile ID to scope the token |
--expires <string> | Token expiration (e.g., 24h, 7d, 30d) |
--name <string> | Required. Name for the token |
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
--service-account <string> | Required. Service account name or ID |
Examples
idyl iam service-account delete
Delete a service account by name or ID.
This action is irreversible. All tokens associated with the service account
will be revoked immediately.
Usage
Flags
| Flag | Description |
|---|---|
-y, --yes | Skip confirmation prompts |
Examples
idyl iam service-account get
Get details of a specific service account, or list all service accounts.
With no arguments, lists all service accounts.
With a name or ID argument, gets details of that specific service account.
Usage
Aliases
listls
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
Examples
idyl iam service-account list-tokens
List all tokens for a service account.
Usage
Aliases
ls-tokensget-tokens
Flags
| Flag | Description |
|---|---|
-o <string>, --output <string> | Output format: table, json, yaml Default: table. |
--service-account <string> | Required. Service account name or ID |
Examples
idyl iam service-account revoke-token
Revoke a service account token.
This immediately invalidates the token. Any requests using this token will fail.
Usage
Flags
| Flag | Description |
|---|---|
--service-account <string> | Required. Service account name or ID |
--token <string> | Required. Token ID |
-y, --yes | Skip confirmation prompts |

