elv-admin
EluvioLive Admin CLI
Usage: elv-admin <command>
Global options
| Option | Type | Required | Description |
|---|---|---|---|
-m, --main | Sets ELV_NET=main | ||
-d, --dv3, --demov3 | Sets ELV_NET=demov3 | ||
--test | Sets ELV_NET=test | ||
--dev | Sets ELV_NET=dev | ||
--verbose, -v | boolean | Verbose mode |
Commands
| Command | Description |
|---|---|
account_create | Create a new account -> mnemonic, address, private key |
query | Query the indexer |
account_set_tenant | Associate this account to the tenant - if an admins group ID is used, it will be converted to the tenant ID. |
account_show | Shows current account information. |
account_balance | Shows account balance for provided address. |
account_send | Send funds to a given address using this key |
replace_stuck_transaction | replace stuck transaction at given nonce using this key with higher gas-price |
account_offer_signature | Creates an offer signature for use by the minter to redeem an nft offer. Note the current key must be a token owner of the nft. |
account_fabric_token | Creates a fabric token using this key |
account_signed_token | Creates a client signed token using this key |
group_create | Create a new access group |
group_add | Add account to access group |
group_remove | Remove account from access group |
space_tenant_info | Show tenant information. |
tenant_show | Show info on this tenant |
tenant_fix | Fix tenant |
tenant_fix_suite | Fix old-gen tenant |
tenant_set_content_admins | Set new content admin |
tenant_remove_content_admin | Remove a content admin |
tenant_set_tenant_users | Set new tenant users |
tenant_remove_tenant_users | Remove a tenant users group |
set_tenant_contract_id | set tenant contract id for the given object: wallet|content-type|tenant|group|library |
get_tenant_info | get tenant contract id and tenant id for the given object: wallet|content-type|tenant|group|library |
space_tenant_deploy | Deploys a tenant contract |
tenant_create_faucet | Generate/get tenant funding address for given tenant and provide funds |
tenant_delete_faucet | Delete faucet information for given tenant |
tenant_create_sharing_key | Generate/get tenant sharing key for given tenant |
tenant_fund_user | fund the user for given tenant_id |
tenant_set_status | Set tenant status for given tenant |
space_tenant_create | Creates a new tenant account including all supporting access groups and deployment of contracts. |
space_tenant_set_eluvio_live_id | Set the tenant-level Eluvio Live object ID in the tenant contract. |
content_meta_get_batch | Get metadata fields for the list of content object IDs in the CSV file or library. |
content_meta_set_batch | Set metadata fields for the list of content object IDs in the CSV file. |
contract_get_meta | Get contract metadata. |
contract_set_meta | Set contract metadata using key/value. |
access_group_member | Checks if the user address is a member of the access group. |
access_group_members | Returns a list of group members. |
claimer_allocate | Allocate an allocation to an user, an allocation contains an amount and an expiration date (in UTC) |
claimer_claim | Claim an amount of your allocations |
claimer_burn | Burn an amount of your allocations |
claimer_list_allocations | List the allocations of an address |
claimer_add_auth_address | Add an address to the authorized address list |
claimer_rm_auth_address | Remove an address from the authorized address list |
claimer_balance_of | Get the balance of an address |
claimer_burn_of | Get the burn of an address |
nodes | Retrieve all nodes in the content space, with optional filters. |
set_object_group_permission | Add a permission on the specified group for the specified object |
object_cleanup | cleanup given object access to dead objects like libraries, groups |
library_delete | delete library by the owner |
object_list | list the content objects the given user or group has access to |
batch_helper | Batch Helper commands |
batch_helper delete_versions | Delete version hashes from object address provided |
batch_helper delete_contents | Delete content objects provided |
group_decrypt_oauth | Decrypt the oauth info: issuer, claims.aud, claims.groups[] from group metadata |
group_encrypt_oauth | Encrypt oauth info: issuer, claims.aud, claims.groups[] and store in group metadata |
issuer_okta_get | Retrieve all Okta users and groups for given issuer |
issuer_okta_sync | Retrieve all Okta users and groups for given issuer and update the policy object metadata |
Command reference
account_create
elv-admin account_create <funds> <account_name> <tenant>
Create a new account -> mnemonic, address, private key
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
funds | string | ✓ | How much to fund the new account from this private key (ELV). |
account_name | string | ✓ | Account Name |
tenant | string | ✓ | Tenant ID (iten) |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--group_roles | string | group and role pairs in JSON format, Eg: {"grp1":"member"} |
query
elv-admin query
Query the indexer
account_set_tenant
elv-admin account_set_tenant <tenant>
Associate this account to the tenant - if an admins group ID is used, it will be converted to the tenant ID.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | ✓ |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--tenant | string | Tenant contract ID (iten...) |
account_show
elv-admin account_show
Shows current account information.
account_balance
elv-admin account_balance <address>
Shows account balance for provided address.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
address | string | ✓ | user address |
account_send
elv-admin account_send <address> <funds>
Send funds to a given address using this key
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
address | string | ✓ | Account address to send |
funds | string | ✓ | How much to send from this private key in ETH. |
replace_stuck_transaction
elv-admin replace_stuck_transaction
replace stuck transaction at given nonce using this key with higher gas-price
Options
| Option | Type | Required | Description |
|---|---|---|---|
--nonce | integer | Nonce of the transaction to be replaced |
account_offer_signature
elv-admin account_offer_signature <nft_addr> <mint_helper_addr> <token_id> <offer_id>
Creates an offer signature for use by the minter to redeem an nft offer. Note the current key must be a token owner of the nft.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
nft_addr | string | ✓ | NFT contract address (hex) |
mint_helper_addr | string | ✓ | Address of the mint helper (hex) |
token_id | integer | ✓ | Token ID of the offer |
offer_id | integer | ✓ | Offer_id |
account_fabric_token
elv-admin account_fabric_token [Options]
Creates a fabric token using this key
Options
| Option | Type | Required | Description |
|---|---|---|---|
--duration | string | Time until the token expires, in milliseconds (default: 120000 = 2 min) |
account_signed_token
elv-admin account_signed_token [Options]
Creates a client signed token using this key
Options
| Option | Type | Required | Description |
|---|---|---|---|
--library_id | string | Library ID to authorize | |
--object_id | string | Object ID to authorize | |
--version_hash | string | Version hash to authorize | |
--policy_id | string | The object ID of the policy for this token | |
--subject | string | Subject of the token. Default is the current address | |
--grant_type | string | Permissions to grant for this token. Options: 'access', 'read', 'create', 'update', 'read-crypt'. Default 'read' | |
--duration | integer | Time until the token expires, in milliseconds. Default 2 min = 2 * 60 * 1000 = 120000) | |
--allow_decryption | boolean | If specified, the re-encryption key will be included in the token, enabling the user of this token to download encrypted content from the specified object | |
--context | string | Additional JSON context |
group_create
elv-admin group_create <name>
Create a new access group
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
name | string | ✓ | The name of the access group |
group_add
elv-admin group_add <group_address> <account_address>
Add account to access group
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
group_address | string | ✓ | The address of the access group (hex) |
account_address | string | ✓ | The address to add as member (hex) |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--is_manager | boolean | Set new address as group manager |
group_remove
elv-admin group_remove <group_address> <account_address>
Remove account from access group
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
group_address | string | ✓ | The address of the access group (hex) |
account_address | string | ✓ | The address to remove as member (hex) |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--is_manager | boolean | remove address as group manager |
space_tenant_info
elv-admin space_tenant_info <tenant>
Show tenant information.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID (iten) |
tenant_show
elv-admin tenant_show <tenant> [options]
Show info on this tenant
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--as_url | string | Alternate authority service URL (include '/as/' route if necessary) | |
--show_metadata | boolean | Show the content fabric metadata associated to this tenant |
tenant_fix
elv-admin tenant_fix <tenant> [options]
Fix tenant
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--content_admin_address | string | Address of the content admins groups |
tenant_fix_suite
elv-admin tenant_fix_suite <tenant> <content_admin_address> [options]
Fix old-gen tenant
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID |
content_admin_address | string | ✓ | Address of the content admins groups |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--libraries | array | List of libraries that belong to this tenant |
tenant_set_content_admins
elv-admin tenant_set_content_admins <tenant> [options]
Set new content admin
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--content_admin_address | string | Address of the content admins groups |
tenant_remove_content_admin
elv-admin tenant_remove_content_admin <tenant> <content_admin_address>
Remove a content admin
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID |
content_admin_address | string | ✓ | Content Admin's address |
tenant_set_tenant_users
elv-admin tenant_set_tenant_users <tenant> [options]
Set new tenant users
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--tenant_users_address | string | Address of the tenant users groups |
tenant_remove_tenant_users
elv-admin tenant_remove_tenant_users <tenant> <tenant_users_address>
Remove a tenant users group
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID |
tenant_users_address | string | ✓ | Tenant users address |
set_tenant_contract_id
elv-admin set_tenant_contract_id <object> <tenantContractId>
set tenant contract id for the given object: wallet|content-type|tenant|group|library
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
object | string | ✓ | object Id | version hash | contract address |
tenantContractId | string | ✓ | tenant contract id |
get_tenant_info
elv-admin get_tenant_info <object>
get tenant contract id and tenant id for the given object: wallet|content-type|tenant|group|library
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
object | string | ✓ | object Id | version hash | contract address |
space_tenant_deploy
elv-admin space_tenant_deploy <tenant_name> <owner_addr> <tenant_admin_addr> <content_admin_addr>
Deploys a tenant contract
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant_name | string | ✓ | Tenant Name |
owner_addr | string | ✓ | Owner of the new contract |
tenant_admin_addr | string | ✓ | Address of the tenant admins groups |
content_admin_addr | string | ✓ | Address of the content admins groups |
tenant_users_addr | string | Address of the tenant users groups |
tenant_create_faucet
elv-admin tenant_create_faucet <tenant_id>
Generate/get tenant funding address for given tenant and provide funds
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant_id | string | ✓ | tenant id |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--funds | number | The amount to fund the faucet funding address, specified in Elv's | |
--as_url | string | Alternate authority service URL (include '/as/' route if necessary) | |
--no_funds | boolean | funds are not transferred to tenant funding address |
tenant_delete_faucet
elv-admin tenant_delete_faucet <tenant_id>
Delete faucet information for given tenant
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant_id | string | ✓ | tenant id |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--as_url | string | Alternate authority service URL (include '/as/' route if necessary) |
tenant_create_sharing_key
elv-admin tenant_create_sharing_key <tenant_id>
Generate/get tenant sharing key for given tenant
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant_id | string | ✓ | tenant id |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--as_url | string | Alternate authority service URL (include '/as/' route if necessary) |
tenant_fund_user
elv-admin tenant_fund_user <tenant_id> <user_address>
fund the user for given tenant_id
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant_id | string | ✓ | tenant id |
user_address | string | ✓ | user address |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--as_url | string | Alternate authority service URL (include '/as/' route if necessary) |
tenant_set_status
elv-admin tenant_set_status <tenant> <tenant_status>
Set tenant status for given tenant
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID |
tenant_status | string | ✓ | Tenant Status Choices: active, inactive |
space_tenant_create
elv-admin space_tenant_create <tenant_name>
Creates a new tenant account including all supporting access groups and deployment of contracts.
PRIVATE_KEY must be set for the space owner.
By default, 51 Elv is transferred to tenant root key
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant_name | string | ✓ | Tenant Name |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--funds | integer | funds transferred to tenant-admin key |
space_tenant_set_eluvio_live_id
elv-admin space_tenant_set_eluvio_live_id <tenant> <eluvio_live_id>
Set the tenant-level Eluvio Live object ID in the tenant contract.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
tenant | string | ✓ | Tenant ID (iten) |
eluvio_live_id | string | ✓ | Object ID of the tenant-level Eluvio Live object (iq) |
content_meta_get_batch
elv-admin content_meta_get_batch <csv_file> [options]
Get metadata fields for the list of content object IDs in the CSV file or library.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
csv_file | string | ✓ | CSV file |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--library | string | Library ID | |
--limit | integer | Max number of objects |
content_meta_set_batch
elv-admin content_meta_set_batch <csv_file>
Set metadata fields for the list of content object IDs in the CSV file.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
csv_file | string | ✓ | CSV file |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--duplicate | boolean | Clone the content objects instead of editing them directly. | |
--dryrun | boolean | Print resulting metadata but don't actually edit the objects. |
contract_get_meta
elv-admin contract_get_meta <addr> <key>
Get contract metadata.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
addr | string | ✓ | Contract address. NFT object ID also accepted eg. iqxxx. |
key | string | ✓ | Metadata key to retrieve. |
contract_set_meta
elv-admin contract_set_meta <addr> <key> <value>
Set contract metadata using key/value.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
addr | string | ✓ | Contract address. NFT object ID also accepted eg. iqxxx. |
key | string | ✓ | Metadata key. |
value | string | ✓ | Metadata value. |
access_group_member
elv-admin access_group_member <group> <addr>
Checks if the user address is a member of the access group.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
group | string | ✓ | Access control group ID or address (igrp or hex format) |
addr | string | ✓ | User address (hex format) |
access_group_members
elv-admin access_group_members <group>
Returns a list of group members.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
group | string | ✓ | Access control group ID or address (igrp or hex format) |
claimer_allocate
elv-admin claimer_allocate <address> <amount> <yyyy_mm_dd>
Allocate an allocation to an user, an allocation contains an amount and an expiration date (in UTC)
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
address | string | ✓ | Address to allocate |
amount | string | ✓ | Amount to allocate |
yyyy_mm_dd | ✓ | ||
expiration_date | string | Expiration date of the allocation (in UTC) |
claimer_claim
elv-admin claimer_claim <amount>
Claim an amount of your allocations
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
amount | string | ✓ | Amount to claim |
claimer_burn
elv-admin claimer_burn <amount>
Burn an amount of your allocations
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
amount | string | ✓ | Amount to burn |
claimer_list_allocations
elv-admin claimer_list_allocations <address>
List the allocations of an address
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
address | string | ✓ | the allocations of this address would be listed |
claimer_add_auth_address
elv-admin claimer_add_auth_address <address>
Add an address to the authorized address list
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
address | string | ✓ | this address would be added to the authorized address list |
claimer_rm_auth_address
elv-admin claimer_rm_auth_address <address>
Remove an address from the authorized address list
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
address | string | ✓ | this address would be removed from the authorized address list |
claimer_balance_of
elv-admin claimer_balance_of <address>
Get the balance of an address
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
address | string | ✓ | the balance of this address would be given |
claimer_burn_of
elv-admin claimer_burn_of <address>
Get the burn of an address
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
address | string | ✓ | the burn of this address would be given |
nodes
elv-admin nodes
Retrieve all nodes in the content space, with optional filters.
Options
| Option | Type | Required | Description |
|---|---|---|---|
--endpoint | string | Match nodes with endpoints that contain this string. | |
--node_id | string | Only match the node with this node ID |
set_object_group_permission
elv-admin set_object_group_permission <object> <group> <permission> [options]
Add a permission on the specified group for the specified object
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
object | string | ✓ | object ID or address |
group | string | ✓ | group ID or address |
permission | string | ✓ | type of permission to add (see, access, manage) |
object_cleanup
elv-admin object_cleanup <object> <object_type>
cleanup given object access to dead objects like libraries, groups
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
object | string | ✓ | object to be cleaned |
object_type | string | ✓ | object type: library | content_object | group | content_type |
library_delete
elv-admin library_delete <library>
delete library by the owner
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
library | string | ✓ | library id/address |
object_list
elv-admin object_list <object>
list the content objects the given user or group has access to
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
object | string | ✓ | user or group id/address |
batch_helper
elv-admin batch_helper <commands> [args...]
Batch Helper commands
Subcommands
batch_helper delete_versions
elv-admin batch_helper delete_versions <target> <start_index> <end_index>
Delete version hashes from object address provided
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
target | string | ✓ | Address/Id of the object |
start_index | number | ✓ | Starting index for version hash deletion |
end_index | number | ✓ | Ending index for version hash deletion |
batch_helper delete_contents
elv-admin batch_helper delete_contents <content_objects>
Delete content objects provided
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
content_objects | string | ✓ | comma separated list of content objects |
group_decrypt_oauth
elv-admin group_decrypt_oauth <group>
Decrypt the oauth info: issuer, claims.aud, claims.groups[] from group metadata
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
group | string | ✓ | group id or address |
group_encrypt_oauth
elv-admin group_encrypt_oauth <group> <oauth_config>
Encrypt oauth info: issuer, claims.aud, claims.groups[] and store in group metadata
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
group | string | ✓ | group id or address |
oauth_config | string | ✓ | oauth config json |
issuer_okta_get
elv-admin issuer_okta_get <okta_domain>
Retrieve all Okta users and groups for given issuer
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
okta_domain | string | ✓ | okta domain url |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--out | string | output-file path |
issuer_okta_sync
elv-admin issuer_okta_sync <policy_id>
Retrieve all Okta users and groups for given issuer and update the policy object metadata
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
policy_id | string | ✓ | policy id |
Options
| Option | Type | Required | Description |
|---|---|---|---|
--okta_domain | string | okta domain url | |
--keep_existing_part | boolean | do not delete existing oauth_settings part hash Default: false | |
--user_group_list | string | users and groups list to store in part |