delete-service-account
dci delete-service-account [flags]
Permanently deletes a service account and all of its API tokens, which stop authenticating immediately. Deleting an ID that no longer exists returns 404. Requires the serviceAccountManager permission.
Deleting a service account also deletes all of its API tokens, which stop authenticating
immediately. Requires the serviceAccountManager permission. Deleting an ID that no longer
exists returns 404.
The API requires If-Match with the current ETag (the etag field of dci get-service-account); a stale value returns 412. It also requires an Idempotency-Key.
Examples
# Check the deletion server-side without performing it (the CLI supplies a throwaway idempotency key).
dci delete-service-account <service-account-id> --if-match <etag> --dry-run
# Delete the account without an interactive prompt, for scripts.
dci delete-service-account <service-account-id> --if-match <etag> --idempotency-key "$(uuidgen)" --yes
Flags
| Flag | Type | Default | Example | Description |
|---|---|---|---|---|
--dry-run | boolean | false | If true, validates the request and returns the would-be result without applying it. The response then carries the X-Dry-Run header. |
Every command also accepts the CLI-wide flags for output shaping — see Output formats and Table output options.
Output
On success, this command produces no response data.
Errors
On failure, dci prints a single error message — with a hint when one is available — and exits with a typed code your scripts can branch on. See Errors and exit codes for the full contract.
HTTP status to exit code mapping
| HTTP status | Exit code | Error code | Meaning |
|---|---|---|---|
| 400 | 30 | VALIDATION_ERROR | The arguments or request body were rejected. Review the command's flags and payload. |
| 401 | 10 | AUTHENTICATION_FAILED | Not signed in, or the API token is invalid. Run dci login or check DCI_API_KEY. |
| 403 | 11 | PERMISSION_DENIED | The DoiT user or the active customer context does not have access. |
| 404 | 20 | RESOURCE_NOT_FOUND | The requested resource does not exist. Check the identifier argument. |
| 412, 428 | 1 | API_ERROR | The request failed; the printed error message has details. |
| 500 | 40 | API_SERVER_ERROR | The API failed to process the request. Retryable; contact DoiT support if it persists. |
Related
- get-service-account — Get a service account
- list-service-accounts — List service accounts
- create-service-account — Create a service account
- update-service-account — Update a service account
- delete-service-account-token — Delete an API token
- API reference: DELETE /iam/v1/service-accounts/{id}
Aliases: deleteserviceaccount