Skip to main content

signaloid-cli keys create

Create a new API key.

Synopsis​

signaloid-cli keys create --name <name> [options]

Options​

OptionRequiredDescription
--name <name>YesDescriptive name for the key
--valid-until <iso>NoExpiration date (ISO 8601 format). Default: no expiry.
--valid-for <duration>NoLifetime before expiry, e.g., 7d, 24h, 30m

Use either --valid-until or --valid-for. If you pass both, the command fails with the error Use either --valid-until or --valid-for, not both.

ValidUntil in the response is a Unix timestamp in seconds (the build and task endpoints use milliseconds), or null for a key that never expires.

Description​

Creates a new API key for programmatic access to Signaloid Cloud Compute Engine. The full API key value is only shown once during creation, so it must be saved securely immediately.

Examples​

Create Key without Expiration​

signaloid-cli keys create --name "Production API Key"

Output​

✔ API key created
{
"Object": "Key",
"Key": "scce_0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef_12345678",
"KeyID": "d190a75fbb14499dab9fa26ab2e76635",
"Name": "Production API Key",
"Owner": "usr_12345661ad6641899387b6458cc9a2e2",
"ValidUntil": null,
"CreatedAt": 1761832939
}

Create Key with Expiration​

signaloid-cli keys create \
--name "Temporary Test Key" \
--valid-until 2027-12-31T23:59:59Z

Output​

✔ API key created
{
"Object": "Key",
"Key": "scce_0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef_12345678",
"KeyID": "582129bb6ea3453c9c6c93085c27c90a",
"Name": "Temporary Test Key",
"Owner": "usr_12345661ad6641899387b6458cc9a2e2",
"ValidUntil": 1830297599,
"CreatedAt": 1791472525
}

Important: The full API key is only shown once. Save it securely!

Output Fields​

FieldTypeDescription
KeystringFull API key value (only shown once), in the form scce_<64 hexadecimal characters>_<8 digits>
KeyIDstringUnique identifier for the key
NamestringDescriptive name given to the key
OwnerstringUser ID of the key owner
CreatedAtnumberUnix timestamp (seconds) of key creation
ValidUntilnumber/nullUnix timestamp (seconds) when key expires, or null for no expiration

Notes​

  • The --valid-until parameter must be in ISO 8601 format with UTC timezone (Z suffix)
  • The full API key value is only returned during creation and cannot be retrieved later
  • If the key is lost, you must delete the old key and create a new one
  • Keys without expiration dates should be rotated regularly as a security best practice
  • Use the date command to generate properly formatted expiration dates
  • The number of API keys per account is limited. The Allowance.KeyCount field of your user account gives the limit.

Troubleshooting​

"Invalid date format" Error​

Problem: Date validation fails.

Solutions:

  1. Use ISO 8601 format: 2027-12-31T23:59:59Z
  2. Ensure UTC timezone (Z suffix)
  3. Verify date is in the future

"Authentication failed" with New Key​

Problem: Newly created key does not work.

Solutions:

  1. Verify you copied the full key including prefix
  2. Check for extra spaces or newlines
  3. Ensure key has not expired
  4. Wait a few seconds for key to propagate
  5. Try re-authenticating:
    signaloid-cli auth logout
    signaloid-cli auth login --api-key <your-key>

"API Key limit" error​

Problem: The API rejects the request with HTTP status 403 and the message You have reached the API Key limit for your account. Please upgrade your account to create more keys.

Solutions:

  1. Delete API keys that you no longer use with signaloid-cli keys delete
  2. Upgrade your account to create more keys

See Also​