﻿# FEATURE_DISABLED — feature is not enabled

Returned by trusted-key endpoints when `CYODA_IAM_TRUSTED_KEY_REGISTRATION_ENABLED=false` (the default):

<em>cyoda-go version <a href="https://github.com/Cyoda/cyoda-go/releases/tag/v0.8.1">0.8.1</a></em>

# errors.FEATURE_DISABLED

## NAME

FEATURE_DISABLED — the operation belongs to an optional feature not enabled in this deployment.

## SYNOPSIS

HTTP: `404` `Not Found`. Retryable: `no`.

## DESCRIPTION

Returned by trusted-key endpoints when `CYODA_IAM_TRUSTED_KEY_REGISTRATION_ENABLED=false` (the default):

- `GET /oauth/keys/trusted`
- `POST /oauth/keys/trusted`
- `DELETE /oauth/keys/trusted/{keyId}`
- `POST /oauth/keys/trusted/{keyId}/invalidate`
- `POST /oauth/keys/trusted/{keyId}/reactivate`

Enable by setting the env var and restarting. Keypair endpoints (`/oauth/keys/keypair/*`) are unaffected.

Also returned by `POST /clients?withAdminRole=true` when
`CYODA_IAM_M2M_ADMIN_ROLE_ENABLED=false` (the default). Enable by
setting the env var and restarting. Other `/clients` operations
(list, create-without-withAdminRole, delete, reset-secret) are
unaffected.

## SEE ALSO

- errors
- config.auth

## See also

- [`cyoda help errors`](/help/errors/) — Every error response from the Cyoda REST API carries a structured `errorCode` in the `properties` object. Multiple codes may share the same HTTP status. Programmatic handling keys on `errorCode`, not HTTP status.
- [`cyoda help config auth`](/help/config/auth/) — config.auth — IAM mode, JWT issuer, HMAC secret, and admin bootstrap controls.

## Raw formats

- [`/help/errors/feature_disabled.json`](/help/errors/feature_disabled.json) — full descriptor (matches `GET /help/{topic}` envelope)
- [`/help/errors/feature_disabled.md`](/help/errors/feature_disabled.md) — body only