# tcld apikey command reference

> APIKey operations

The `tcld apikey` command aPIKey operations.

Alias: `ak`

- [tcld apikey create](#create)
- [tcld apikey get](#get)
- [tcld apikey list](#list)
- [tcld apikey delete](#delete)
- [tcld apikey disable](#disable)
- [tcld apikey enable](#enable)

### create

The `tcld apikey create` command create an apikey. Make sure to copy the secret or else you will not be able to retrieve it again.

Alias: `c`

#### --name

the display name of the apikey

Alias: `n`

#### --description

the description of the apikey

Alias: `desc`

#### --duration

the duration from now when the apikey will expire, will be ignored if expiry flag is set, examples: '1.5y', '30d', '4d12h'

Alias: `d`

#### --expiry

Alias: `e`

#### --service-account-id

setting this flag will create an api key for a service account, not a user

Alias: `si`

#### --request-id

The request-id to use for the asynchronous operation, if not set the server will assign one (optional)

Alias: `r`

### get

The `tcld apikey get` command get an apikey.

Alias: `g`

#### --id

The id of the apikey to get

Alias: `i`

### list

The `tcld apikey list` command list API keys.

Alias: `l`

#### --owner-id

Filter API keys by owner ID

Alias: `oid`

#### --owner-type

Filter API keys by owner type (i.e. 'user', 'service-account')

Alias: `ot`

### delete

The `tcld apikey delete` command delete an apikey.

Alias: `d`

#### --id

The id of the apikey to delete

Alias: `i`

#### --resource-version

The resource-version (etag) to update from, if not set the cli will use the latest (optional)

Alias: `v`

#### --request-id

The request-id to use for the asynchronous operation, if not set the server will assign one (optional)

Alias: `r`

### disable

The `tcld apikey disable` command disable an apikey.

Alias: `da`

#### --id

The id of the apikey to disable

Alias: `i`

#### --resource-version

The resource-version (etag) to update from, if not set the cli will use the latest (optional)

Alias: `v`

#### --request-id

The request-id to use for the asynchronous operation, if not set the server will assign one (optional)

Alias: `r`

### enable

The `tcld apikey enable` command enable a disabled apikey.

Alias: `ea`

#### --id

The id of the apikey to enable

Alias: `i`

#### --resource-version

The resource-version (etag) to update from, if not set the cli will use the latest (optional)

Alias: `v`

#### --request-id

The request-id to use for the asynchronous operation, if not set the server will assign one (optional)

Alias: `r`
