Skip to content
qibdo qibdo
Theme
Book a demo

Errors

Every IAM error carries a stable numeric error_code and a machine-readable reason. This page lists the logical (domain) error codes IAM can return. For the full error envelope (the google.rpc.Status shape, the reason and metadata fields, and how codes are structured) see Errors.

IAM codes begin with 6 (for example 6308004, read as 6_308_004: service, group, specific error). The wire value is always the flat integer; you can match on either error_code or reason, both are stable.

The first two codes (6000001 and 6000002) are reserved framework authentication results raised by the platform gateway before a request reaches a service. The rest are domain codes raised by IAM itself.

The Status column is the canonical gRPC status the error maps to, which the gateway renders as the matching HTTP status (see the status codes table).

CodeReasonStatusDescription
6000001UNAUTHENTICATEDUNAUTHENTICATEDUser is not authenticated.
6000002ACCESS_DENIEDPERMISSION_DENIEDUser is not authorized.
6300001INVALID_CREDENTIALSUNAUTHENTICATEDInvalid email or password.
6302001ROLE_NAME_IS_BLANKINVALID_ARGUMENTRole name must not be blank.
6302002ROLE_NOT_FOUNDNOT_FOUNDRole not found.
6302003SYSTEM_ROLE_IMMUTABLEINVALID_ARGUMENTSystem roles cannot be modified or deleted.
6302004ROLE_NAME_ALREADY_EXISTSALREADY_EXISTSA role with this name already exists.
6302005ROLE_IS_DISABLEDINVALID_ARGUMENTDisabled roles cannot be assigned to bindings.
6302006CUSTOM_ROLE_SCOPE_ID_IS_NOT_VALIDINVALID_ARGUMENTCustom role scope ID is required and must be a valid ID.
6302007ROLE_NAME_TOO_LONGINVALID_ARGUMENTRole name must not exceed 128 characters.
6302008ROLE_NOT_MARKED_FOR_DELETIONFAILED_PRECONDITIONRole must be marked for deletion before removal.
6303001POLICY_NAME_IS_BLANKINVALID_ARGUMENTPolicy name must not be blank.
6303002POLICY_CONDITIONS_EMPTYINVALID_ARGUMENTPolicy must have at least one condition.
6303003POLICY_NOT_FOUNDNOT_FOUNDPolicy not found.
6303004POLICY_WORKSPACE_ID_IS_NOT_VALIDINVALID_ARGUMENTPolicy workspace ID must be a valid UUID.
6303005POLICY_HAS_ACTIVE_BINDINGSINVALID_ARGUMENTCannot delete a policy that has active IAM bindings referencing it.
6303006SOURCE_IP_CONDITION_CIDRS_EMPTYINVALID_ARGUMENTSource IP condition must have at least one CIDR range.
6303007ROLE_CONDITION_SERVICES_EMPTYINVALID_ARGUMENTRole condition must have at least one service.
6303008POLICY_NAME_TOO_LONGINVALID_ARGUMENTPolicy name must not exceed 128 characters.
6303009POLICY_NOT_MARKED_FOR_DELETIONFAILED_PRECONDITIONPolicy must be marked for deletion before removal.
6304001IAM_BINDING_NOT_FOUNDNOT_FOUNDIAM binding not found.
6304002IAM_BINDING_ADMIN_NON_REMOVABLEINVALID_ARGUMENTAdmin binding for the organisation owner cannot be removed.
6304003IAM_BINDING_ALREADY_EXISTSALREADY_EXISTSAn IAM binding for this principal, role, and scope already exists.
6304004IAM_BINDING_PRINCIPAL_ID_NOT_VALIDINVALID_ARGUMENTIAM binding principal ID must be a valid UUID.
6304005IAM_BINDING_ROLE_ID_IS_NOT_VALIDINVALID_ARGUMENTIAM binding role ID must be a valid UUID.
6304006IAM_BINDING_SCOPE_ID_IS_NOT_VALIDINVALID_ARGUMENTIAM binding scope ID must be a valid UUID.
6304007IAM_BINDING_NOT_MARKED_FOR_DELETIONFAILED_PRECONDITIONIAM binding must be marked for deletion before removal.
6305001IAM_OPERATION_PROGRESS_OUT_OF_RANGEINVALID_ARGUMENTOperation progress must be between 0 and 100.
6305002IAM_OPERATION_END_TIME_BEFORE_START_TIMEINVALID_ARGUMENTOperation end time must not be before start time.
6305003IAM_OPERATION_NOT_FOUNDNOT_FOUNDIAM operation not found.
6306001AUTHENTICATION_TOKEN_IS_BLANKINVALID_ARGUMENTAuthentication token must not be blank.
6306002AUTHENTICATION_TOKEN_EXPIRY_IS_NOT_VALIDINVALID_ARGUMENTAuthentication token expiry must be after creation time.
6306003AUTHENTICATION_TOKEN_IS_EXPIREDINVALID_ARGUMENTAuthentication token has expired.
6306004AUTHENTICATION_TOKEN_NOT_FOUNDNOT_FOUNDAuthentication token was not found.
6306005AUTHENTICATION_TOKEN_USER_ID_NOT_VALIDINVALID_ARGUMENTAuthentication token user identifier is not valid.
6306006AUTHENTICATION_TOKEN_TOKEN_HASH_NOT_VALIDINVALID_ARGUMENTAuthentication token hash is not valid.
6306007AUTHENTICATION_TOKEN_FAMILY_ID_NOT_VALIDINVALID_ARGUMENTAuthentication token family identifier is not valid.
6306008REFRESH_TOKEN_NOT_FOUNDNOT_FOUNDRefresh token was not found.
6306009REFRESH_TOKEN_IS_EXPIREDINVALID_ARGUMENTRefresh token has expired.
6306010REFRESH_TOKEN_TYPE_NOT_VALIDINVALID_ARGUMENTToken is not a valid refresh token.
6307001PERMISSION_OPERATION_NOT_IMPLEMENTEDUNIMPLEMENTEDPermission operation is not yet implemented.
6307002PERMISSION_NOT_FOUNDNOT_FOUNDPermission not found.
6307003PERMISSION_NAME_NOT_VALIDINVALID_ARGUMENTPermission name is not valid.
6308001PERSON_EMAIL_IS_BLANKINVALID_ARGUMENTPerson email is required.
6308002PERSON_EMAIL_INVALID_FORMATINVALID_ARGUMENTPerson email format is not valid.
6308003PERSON_PASSWORD_HASH_IS_BLANKINVALID_ARGUMENTPerson password hash is required.
6308004PERSON_NOT_FOUNDNOT_FOUNDPerson not found.
6308005PERSON_EMAIL_ALREADY_EXISTSALREADY_EXISTSA person with this email already exists.
6308006PERSON_IS_INACTIVEINVALID_ARGUMENTPerson account is inactive.
6308007PERSON_NOT_MARKED_FOR_DELETIONINVALID_ARGUMENTPerson must be marked for deletion before removal.
6309001SERVICE_ACCOUNT_EMAIL_NOT_VALIDINVALID_ARGUMENTService account email is not valid.
6309002SERVICE_ACCOUNT_BOUNDED_CONTEXT_IS_BLANKINVALID_ARGUMENTService account context is required.
6309003SERVICE_ACCOUNT_NOT_FOUNDNOT_FOUNDService account not found.
6309004SERVICE_ACCOUNT_IS_INACTIVEINVALID_ARGUMENTService account is inactive.