@faable/auth-sdk 2.7.34 → 2.7.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/FaableAuthApi.d.ts +4 -0
- package/dist/api/generated-client.d.ts +7 -0
- package/dist/api/types.d.ts +34 -1
- package/dist/version.js +2 -2
- package/package.json +1 -1
- package/spec/openapi.json +281 -2
package/dist/FaableAuthApi.d.ts
CHANGED
|
@@ -627,6 +627,7 @@ export declare class FaableAuthApi extends GeneratedFaableAuthApi {
|
|
|
627
627
|
require_number?: boolean | undefined;
|
|
628
628
|
require_special?: boolean | undefined;
|
|
629
629
|
} | undefined;
|
|
630
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
630
631
|
disable_signup?: boolean | undefined;
|
|
631
632
|
account: string;
|
|
632
633
|
metadata: {
|
|
@@ -666,6 +667,7 @@ export declare class FaableAuthApi extends GeneratedFaableAuthApi {
|
|
|
666
667
|
require_number?: boolean | undefined;
|
|
667
668
|
require_special?: boolean | undefined;
|
|
668
669
|
} | undefined;
|
|
670
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
669
671
|
disable_signup?: boolean | undefined;
|
|
670
672
|
account: string;
|
|
671
673
|
metadata: {
|
|
@@ -708,6 +710,7 @@ export declare class FaableAuthApi extends GeneratedFaableAuthApi {
|
|
|
708
710
|
require_number?: boolean | undefined;
|
|
709
711
|
require_special?: boolean | undefined;
|
|
710
712
|
} | undefined;
|
|
713
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
711
714
|
disable_signup?: boolean | undefined;
|
|
712
715
|
account: string;
|
|
713
716
|
metadata: {
|
|
@@ -749,6 +752,7 @@ export declare class FaableAuthApi extends GeneratedFaableAuthApi {
|
|
|
749
752
|
require_number?: boolean | undefined;
|
|
750
753
|
require_special?: boolean | undefined;
|
|
751
754
|
} | undefined;
|
|
755
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
752
756
|
disable_signup?: boolean | undefined;
|
|
753
757
|
account: string;
|
|
754
758
|
metadata: {
|
|
@@ -1812,6 +1812,7 @@ export declare abstract class GeneratedFaableAuthApi extends FaableApi {
|
|
|
1812
1812
|
require_number?: boolean | undefined;
|
|
1813
1813
|
require_special?: boolean | undefined;
|
|
1814
1814
|
} | undefined;
|
|
1815
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
1815
1816
|
disable_signup?: boolean | undefined;
|
|
1816
1817
|
account: string;
|
|
1817
1818
|
metadata: {
|
|
@@ -1867,6 +1868,7 @@ export declare abstract class GeneratedFaableAuthApi extends FaableApi {
|
|
|
1867
1868
|
require_number?: boolean | undefined;
|
|
1868
1869
|
require_special?: boolean | undefined;
|
|
1869
1870
|
} | undefined;
|
|
1871
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
1870
1872
|
disable_signup?: boolean | undefined;
|
|
1871
1873
|
account: string;
|
|
1872
1874
|
metadata: {
|
|
@@ -1923,6 +1925,7 @@ export declare abstract class GeneratedFaableAuthApi extends FaableApi {
|
|
|
1923
1925
|
require_number?: boolean | undefined;
|
|
1924
1926
|
require_special?: boolean | undefined;
|
|
1925
1927
|
} | undefined;
|
|
1928
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
1926
1929
|
disable_signup?: boolean | undefined;
|
|
1927
1930
|
account: string;
|
|
1928
1931
|
metadata: {
|
|
@@ -1980,6 +1983,7 @@ export declare abstract class GeneratedFaableAuthApi extends FaableApi {
|
|
|
1980
1983
|
require_number?: boolean | undefined;
|
|
1981
1984
|
require_special?: boolean | undefined;
|
|
1982
1985
|
} | undefined;
|
|
1986
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
1983
1987
|
disable_signup?: boolean | undefined;
|
|
1984
1988
|
account: string;
|
|
1985
1989
|
metadata: {
|
|
@@ -2019,6 +2023,7 @@ export declare abstract class GeneratedFaableAuthApi extends FaableApi {
|
|
|
2019
2023
|
require_number?: boolean | undefined;
|
|
2020
2024
|
require_special?: boolean | undefined;
|
|
2021
2025
|
} | undefined;
|
|
2026
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
2022
2027
|
disable_signup?: boolean | undefined;
|
|
2023
2028
|
account: string;
|
|
2024
2029
|
metadata: {
|
|
@@ -2061,6 +2066,7 @@ export declare abstract class GeneratedFaableAuthApi extends FaableApi {
|
|
|
2061
2066
|
require_number?: boolean | undefined;
|
|
2062
2067
|
require_special?: boolean | undefined;
|
|
2063
2068
|
} | undefined;
|
|
2069
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
2064
2070
|
disable_signup?: boolean | undefined;
|
|
2065
2071
|
account: string;
|
|
2066
2072
|
metadata: {
|
|
@@ -2118,6 +2124,7 @@ export declare abstract class GeneratedFaableAuthApi extends FaableApi {
|
|
|
2118
2124
|
require_number?: boolean | undefined;
|
|
2119
2125
|
require_special?: boolean | undefined;
|
|
2120
2126
|
} | undefined;
|
|
2127
|
+
login_identifier?: "username" | "email" | "email_or_username" | undefined;
|
|
2121
2128
|
disable_signup?: boolean | undefined;
|
|
2122
2129
|
account: string;
|
|
2123
2130
|
metadata: {
|
package/dist/api/types.d.ts
CHANGED
|
@@ -4387,6 +4387,8 @@ export interface components {
|
|
|
4387
4387
|
require_number?: boolean;
|
|
4388
4388
|
require_special?: boolean;
|
|
4389
4389
|
};
|
|
4390
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
4391
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
4390
4392
|
/** @description When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`. */
|
|
4391
4393
|
disable_signup?: boolean;
|
|
4392
4394
|
/** @description Object is related with this account */
|
|
@@ -4449,6 +4451,8 @@ export interface components {
|
|
|
4449
4451
|
require_special?: boolean;
|
|
4450
4452
|
};
|
|
4451
4453
|
disable_signup?: boolean;
|
|
4454
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
4455
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
4452
4456
|
/** @description Add Metadata */
|
|
4453
4457
|
metadata?: {
|
|
4454
4458
|
[key: string]: unknown;
|
|
@@ -4492,6 +4496,8 @@ export interface components {
|
|
|
4492
4496
|
require_special?: boolean;
|
|
4493
4497
|
} | null;
|
|
4494
4498
|
disable_signup?: boolean;
|
|
4499
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
4500
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
4495
4501
|
};
|
|
4496
4502
|
/** @description Presentation metadata for one connection type. Contains no endpoint URLs and no credentials. */
|
|
4497
4503
|
ConnectionTypeInfo: {
|
|
@@ -4535,6 +4541,8 @@ export interface components {
|
|
|
4535
4541
|
require_number?: boolean;
|
|
4536
4542
|
require_special?: boolean;
|
|
4537
4543
|
};
|
|
4544
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
4545
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
4538
4546
|
};
|
|
4539
4547
|
/** @description Client */
|
|
4540
4548
|
Client: {
|
|
@@ -6248,6 +6256,9 @@ export interface components {
|
|
|
6248
6256
|
code?: string;
|
|
6249
6257
|
code_verifier?: string;
|
|
6250
6258
|
username?: string;
|
|
6259
|
+
password?: string;
|
|
6260
|
+
/** @description For `grant_type=password`: the name of the database connection to sign in against. Defaults to the first database connection offered to the client. */
|
|
6261
|
+
realm?: string;
|
|
6251
6262
|
otp?: string;
|
|
6252
6263
|
refresh_token?: string;
|
|
6253
6264
|
/** @description Opaque token returned with a `403 mfa_required` response. Present it here with `grant_type=http://auth0.com/oauth/grant-type/mfa-otp` (or `…/mfa-recovery-code`) and the code, to finish a grant a second-factor policy interrupted. */
|
|
@@ -6397,6 +6408,7 @@ export interface components {
|
|
|
6397
6408
|
* - `mfa_invalid_code` (401): The authenticator code did not verify.
|
|
6398
6409
|
* - `mfa_invalid_recovery_code` (401): The recovery code did not verify.
|
|
6399
6410
|
* - `too_many_attempts` (429): Too many wrong codes. Wait a few minutes and try again.
|
|
6411
|
+
* - `too_many_login_attempts` (429): Too many failed sign-in attempts for this email or username from this network. Wait a few minutes and try again.
|
|
6400
6412
|
* - `totp_not_allowed` (401): This account does not accept authenticator apps.
|
|
6401
6413
|
* - `no_usable_factor` (400): The user has no confirmed second factor to challenge.
|
|
6402
6414
|
* - `factor_not_found` (400): No factor with that id belongs to this user.
|
|
@@ -6418,7 +6430,7 @@ export interface components {
|
|
|
6418
6430
|
* - `revision_not_found` (404): The revision is not in the flow history.
|
|
6419
6431
|
* @enum {string}
|
|
6420
6432
|
*/
|
|
6421
|
-
ErrorCode: "bad_request" | "validation_error" | "unauthorized" | "payment_required" | "forbidden" | "not_found" | "method_not_allowed" | "conflict" | "payload_too_large" | "unsupported_media_type" | "unprocessable_entity" | "too_many_requests" | "internal_error" | "already_exists" | "invalid_id" | "account_not_found" | "invalid_query" | "search_not_supported" | "invalid_expand" | "access_denied" | "insufficient_scope" | "team_required" | "account_limit_reached" | "invalid_project_id" | "account_transfer_refused" | "plan_required" | "not_logged_in" | "invalid_token" | "not_owner" | "user_suspended" | "invalid_credentials" | "login_denied" | "signup_denied" | "client_credentials_denied" | "signup_disabled" | "email_taken" | "invalid_email" | "same_email" | "user_has_no_email" | "password_too_weak" | "invalid_password_hash" | "weak_password_hash" | "invalid_code" | "invalid_phone" | "phone_changed" | "phone_already_verified" | "sms_unavailable" | "sms_failed" | "invalid_state" | "state_mismatch" | "invalid_ticket" | "ticket_used" | "ticket_expired" | "ticket_not_found" | "credential_not_found" | "invalid_link" | "expired_link" | "invalid_otp" | "invalid_client" | "client_not_found" | "client_mismatch" | "invalid_client_metadata" | "invalid_connection" | "connection_required" | "connection_misconfigured" | "passwordless_unavailable" | "ambiguous_connection" | "invalid_redirect_uri" | "origin_not_allowed" | "audience_not_found" | "system_resource" | "invalid_request" | "invalid_device_code" | "provider_error" | "identity_already_linked" | "identity_link_denied" | "identity_conflict" | "identity_orphaned" | "no_provider_token" | "no_refresh_token" | "action_unavailable" | "login_flow_misconfigured" | "mfa_required" | "step_up_required" | "interaction_required" | "passkey_login_disabled" | "mfa_pending" | "mfa_invalid_code" | "mfa_invalid_recovery_code" | "too_many_attempts" | "totp_not_allowed" | "no_usable_factor" | "factor_not_found" | "factor_already_confirmed" | "invalid_factor" | "session_missing" | "passkey_verification_failed" | "no_passkey_enrolled" | "malformed_credential" | "unknown_passkey" | "invalid_passkey" | "invite_not_found" | "invite_used" | "already_member" | "not_a_member" | "role_not_found" | "invalid_role" | "flow_not_found" | "revision_not_found";
|
|
6433
|
+
ErrorCode: "bad_request" | "validation_error" | "unauthorized" | "payment_required" | "forbidden" | "not_found" | "method_not_allowed" | "conflict" | "payload_too_large" | "unsupported_media_type" | "unprocessable_entity" | "too_many_requests" | "internal_error" | "already_exists" | "invalid_id" | "account_not_found" | "invalid_query" | "search_not_supported" | "invalid_expand" | "access_denied" | "insufficient_scope" | "team_required" | "account_limit_reached" | "invalid_project_id" | "account_transfer_refused" | "plan_required" | "not_logged_in" | "invalid_token" | "not_owner" | "user_suspended" | "invalid_credentials" | "login_denied" | "signup_denied" | "client_credentials_denied" | "signup_disabled" | "email_taken" | "invalid_email" | "same_email" | "user_has_no_email" | "password_too_weak" | "invalid_password_hash" | "weak_password_hash" | "invalid_code" | "invalid_phone" | "phone_changed" | "phone_already_verified" | "sms_unavailable" | "sms_failed" | "invalid_state" | "state_mismatch" | "invalid_ticket" | "ticket_used" | "ticket_expired" | "ticket_not_found" | "credential_not_found" | "invalid_link" | "expired_link" | "invalid_otp" | "invalid_client" | "client_not_found" | "client_mismatch" | "invalid_client_metadata" | "invalid_connection" | "connection_required" | "connection_misconfigured" | "passwordless_unavailable" | "ambiguous_connection" | "invalid_redirect_uri" | "origin_not_allowed" | "audience_not_found" | "system_resource" | "invalid_request" | "invalid_device_code" | "provider_error" | "identity_already_linked" | "identity_link_denied" | "identity_conflict" | "identity_orphaned" | "no_provider_token" | "no_refresh_token" | "action_unavailable" | "login_flow_misconfigured" | "mfa_required" | "step_up_required" | "interaction_required" | "passkey_login_disabled" | "mfa_pending" | "mfa_invalid_code" | "mfa_invalid_recovery_code" | "too_many_attempts" | "too_many_login_attempts" | "totp_not_allowed" | "no_usable_factor" | "factor_not_found" | "factor_already_confirmed" | "invalid_factor" | "session_missing" | "passkey_verification_failed" | "no_passkey_enrolled" | "malformed_credential" | "unknown_passkey" | "invalid_passkey" | "invite_not_found" | "invite_used" | "already_member" | "not_a_member" | "role_not_found" | "invalid_role" | "flow_not_found" | "revision_not_found";
|
|
6422
6434
|
/** @description Every error response has this shape. Branch on `error_code`, never on `message`: the message is written for a person and may change. */
|
|
6423
6435
|
ErrorResponse: {
|
|
6424
6436
|
/** @description The HTTP status, repeated. */
|
|
@@ -8411,6 +8423,8 @@ export interface operations {
|
|
|
8411
8423
|
require_special?: boolean;
|
|
8412
8424
|
};
|
|
8413
8425
|
disable_signup?: boolean;
|
|
8426
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
8427
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
8414
8428
|
/** @description Add Metadata */
|
|
8415
8429
|
metadata?: {
|
|
8416
8430
|
[key: string]: unknown;
|
|
@@ -8475,6 +8489,8 @@ export interface operations {
|
|
|
8475
8489
|
require_number?: boolean;
|
|
8476
8490
|
require_special?: boolean;
|
|
8477
8491
|
};
|
|
8492
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
8493
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
8478
8494
|
/** @description When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`. */
|
|
8479
8495
|
disable_signup?: boolean;
|
|
8480
8496
|
/** @description Object is related with this account */
|
|
@@ -8644,6 +8660,8 @@ export interface operations {
|
|
|
8644
8660
|
require_number?: boolean;
|
|
8645
8661
|
require_special?: boolean;
|
|
8646
8662
|
};
|
|
8663
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
8664
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
8647
8665
|
/** @description When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`. */
|
|
8648
8666
|
disable_signup?: boolean;
|
|
8649
8667
|
/** @description Object is related with this account */
|
|
@@ -8797,6 +8815,8 @@ export interface operations {
|
|
|
8797
8815
|
require_special?: boolean;
|
|
8798
8816
|
} | null;
|
|
8799
8817
|
disable_signup?: boolean;
|
|
8818
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
8819
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
8800
8820
|
};
|
|
8801
8821
|
};
|
|
8802
8822
|
};
|
|
@@ -8857,6 +8877,8 @@ export interface operations {
|
|
|
8857
8877
|
require_number?: boolean;
|
|
8858
8878
|
require_special?: boolean;
|
|
8859
8879
|
};
|
|
8880
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
8881
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
8860
8882
|
/** @description When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`. */
|
|
8861
8883
|
disable_signup?: boolean;
|
|
8862
8884
|
/** @description Object is related with this account */
|
|
@@ -9032,6 +9054,8 @@ export interface operations {
|
|
|
9032
9054
|
require_number?: boolean;
|
|
9033
9055
|
require_special?: boolean;
|
|
9034
9056
|
};
|
|
9057
|
+
/** @description What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections. */
|
|
9058
|
+
login_identifier?: "email" | "username" | "email_or_username";
|
|
9035
9059
|
/** @description When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`. */
|
|
9036
9060
|
disable_signup?: boolean;
|
|
9037
9061
|
/** @description Object is related with this account */
|
|
@@ -25228,6 +25252,9 @@ export interface operations {
|
|
|
25228
25252
|
code?: string;
|
|
25229
25253
|
code_verifier?: string;
|
|
25230
25254
|
username?: string;
|
|
25255
|
+
password?: string;
|
|
25256
|
+
/** @description For `grant_type=password`: the name of the database connection to sign in against. Defaults to the first database connection offered to the client. */
|
|
25257
|
+
realm?: string;
|
|
25231
25258
|
otp?: string;
|
|
25232
25259
|
refresh_token?: string;
|
|
25233
25260
|
/** @description Opaque token returned with a `403 mfa_required` response. Present it here with `grant_type=http://auth0.com/oauth/grant-type/mfa-otp` (or `…/mfa-recovery-code`) and the code, to finish a grant a second-factor policy interrupted. */
|
|
@@ -25326,6 +25353,9 @@ export interface operations {
|
|
|
25326
25353
|
code?: string;
|
|
25327
25354
|
code_verifier?: string;
|
|
25328
25355
|
username?: string;
|
|
25356
|
+
password?: string;
|
|
25357
|
+
/** @description For `grant_type=password`: the name of the database connection to sign in against. Defaults to the first database connection offered to the client. */
|
|
25358
|
+
realm?: string;
|
|
25329
25359
|
otp?: string;
|
|
25330
25360
|
refresh_token?: string;
|
|
25331
25361
|
/** @description Opaque token returned with a `403 mfa_required` response. Present it here with `grant_type=http://auth0.com/oauth/grant-type/mfa-otp` (or `…/mfa-recovery-code`) and the code, to finish a grant a second-factor policy interrupted. */
|
|
@@ -25356,6 +25386,9 @@ export interface operations {
|
|
|
25356
25386
|
code?: string;
|
|
25357
25387
|
code_verifier?: string;
|
|
25358
25388
|
username?: string;
|
|
25389
|
+
password?: string;
|
|
25390
|
+
/** @description For `grant_type=password`: the name of the database connection to sign in against. Defaults to the first database connection offered to the client. */
|
|
25391
|
+
realm?: string;
|
|
25359
25392
|
otp?: string;
|
|
25360
25393
|
refresh_token?: string;
|
|
25361
25394
|
/** @description Opaque token returned with a `403 mfa_required` response. Present it here with `grant_type=http://auth0.com/oauth/grant-type/mfa-otp` (or `…/mfa-recovery-code`) and the code, to finish a grant a second-factor policy interrupted. */
|
package/dist/version.js
CHANGED
|
@@ -9,13 +9,13 @@
|
|
|
9
9
|
// login pages could not import the SDK at all. Same pattern as auth-js.
|
|
10
10
|
//
|
|
11
11
|
// The sentinels MUST stay byte-identical to the `from` values in `.releaserc`.
|
|
12
|
-
export const version = "2.7.
|
|
12
|
+
export const version = "2.7.36";
|
|
13
13
|
// Short git SHA of the released commit. The version dates a build; this names
|
|
14
14
|
// the exact tree, so a canonical log line or an audit entry leads straight to
|
|
15
15
|
// `git show <sha>`. Deliberately NOT hex: an unreleased build (dev, a local
|
|
16
16
|
// link) cannot be mistaken for a real commit — auth only records values that
|
|
17
17
|
// look like a SHA, and this one never will.
|
|
18
|
-
export const commit = "
|
|
18
|
+
export const commit = "3f9e3b8";
|
|
19
19
|
// What this SDK writes in `x-faable-client`. Exported for a consumer that
|
|
20
20
|
// builds a strategy on its own (outside `FaableAuthApi`) and still wants the
|
|
21
21
|
// token request attributed — a bare `authClientCredentials` stamps only what
|
package/package.json
CHANGED
package/spec/openapi.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"info": {
|
|
4
4
|
"title": "@faablecloud/auth",
|
|
5
5
|
"description": "Auth Platform made by Faable. Manage Users and Roles",
|
|
6
|
-
"version": "2.
|
|
6
|
+
"version": "2.39.0",
|
|
7
7
|
"license": {
|
|
8
8
|
"name": "private",
|
|
9
9
|
"url": "https://faable.com/docs/platform/privacy-policy"
|
|
@@ -741,6 +741,29 @@
|
|
|
741
741
|
},
|
|
742
742
|
"description": "Password policy enforced when writing a password through this database connection (password reset and admin set-password). `level` is an Auth0-style preset (none/low/fair/good/excellent); the dashboard expands it into the explicit rule fields when saving. The rule fields override the preset baseline. When unset on the connection, the server applies the `good` default. Does not affect login."
|
|
743
743
|
},
|
|
744
|
+
"login_identifier": {
|
|
745
|
+
"anyOf": [
|
|
746
|
+
{
|
|
747
|
+
"type": "string",
|
|
748
|
+
"enum": [
|
|
749
|
+
"email"
|
|
750
|
+
]
|
|
751
|
+
},
|
|
752
|
+
{
|
|
753
|
+
"type": "string",
|
|
754
|
+
"enum": [
|
|
755
|
+
"username"
|
|
756
|
+
]
|
|
757
|
+
},
|
|
758
|
+
{
|
|
759
|
+
"type": "string",
|
|
760
|
+
"enum": [
|
|
761
|
+
"email_or_username"
|
|
762
|
+
]
|
|
763
|
+
}
|
|
764
|
+
],
|
|
765
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
766
|
+
},
|
|
744
767
|
"disable_signup": {
|
|
745
768
|
"type": "boolean",
|
|
746
769
|
"description": "When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`."
|
|
@@ -914,6 +937,29 @@
|
|
|
914
937
|
"disable_signup": {
|
|
915
938
|
"type": "boolean"
|
|
916
939
|
},
|
|
940
|
+
"login_identifier": {
|
|
941
|
+
"anyOf": [
|
|
942
|
+
{
|
|
943
|
+
"type": "string",
|
|
944
|
+
"enum": [
|
|
945
|
+
"email"
|
|
946
|
+
]
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
"type": "string",
|
|
950
|
+
"enum": [
|
|
951
|
+
"username"
|
|
952
|
+
]
|
|
953
|
+
},
|
|
954
|
+
{
|
|
955
|
+
"type": "string",
|
|
956
|
+
"enum": [
|
|
957
|
+
"email_or_username"
|
|
958
|
+
]
|
|
959
|
+
}
|
|
960
|
+
],
|
|
961
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
962
|
+
},
|
|
917
963
|
"metadata": {
|
|
918
964
|
"type": "object",
|
|
919
965
|
"properties": {},
|
|
@@ -1077,6 +1123,29 @@
|
|
|
1077
1123
|
},
|
|
1078
1124
|
"disable_signup": {
|
|
1079
1125
|
"type": "boolean"
|
|
1126
|
+
},
|
|
1127
|
+
"login_identifier": {
|
|
1128
|
+
"anyOf": [
|
|
1129
|
+
{
|
|
1130
|
+
"type": "string",
|
|
1131
|
+
"enum": [
|
|
1132
|
+
"email"
|
|
1133
|
+
]
|
|
1134
|
+
},
|
|
1135
|
+
{
|
|
1136
|
+
"type": "string",
|
|
1137
|
+
"enum": [
|
|
1138
|
+
"username"
|
|
1139
|
+
]
|
|
1140
|
+
},
|
|
1141
|
+
{
|
|
1142
|
+
"type": "string",
|
|
1143
|
+
"enum": [
|
|
1144
|
+
"email_or_username"
|
|
1145
|
+
]
|
|
1146
|
+
}
|
|
1147
|
+
],
|
|
1148
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
1080
1149
|
}
|
|
1081
1150
|
},
|
|
1082
1151
|
"description": "Partial update for a Connection. Only the supplied fields are modified. `connection_type` is intentionally excluded — changing it would orphan every identity already linked to this connection.",
|
|
@@ -1252,6 +1321,29 @@
|
|
|
1252
1321
|
}
|
|
1253
1322
|
},
|
|
1254
1323
|
"description": "Password policy enforced when writing a password through this database connection (password reset and admin set-password). `level` is an Auth0-style preset (none/low/fair/good/excellent); the dashboard expands it into the explicit rule fields when saving. The rule fields override the preset baseline. When unset on the connection, the server applies the `good` default. Does not affect login."
|
|
1324
|
+
},
|
|
1325
|
+
"login_identifier": {
|
|
1326
|
+
"anyOf": [
|
|
1327
|
+
{
|
|
1328
|
+
"type": "string",
|
|
1329
|
+
"enum": [
|
|
1330
|
+
"email"
|
|
1331
|
+
]
|
|
1332
|
+
},
|
|
1333
|
+
{
|
|
1334
|
+
"type": "string",
|
|
1335
|
+
"enum": [
|
|
1336
|
+
"username"
|
|
1337
|
+
]
|
|
1338
|
+
},
|
|
1339
|
+
{
|
|
1340
|
+
"type": "string",
|
|
1341
|
+
"enum": [
|
|
1342
|
+
"email_or_username"
|
|
1343
|
+
]
|
|
1344
|
+
}
|
|
1345
|
+
],
|
|
1346
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
1255
1347
|
}
|
|
1256
1348
|
},
|
|
1257
1349
|
"additionalProperties": false
|
|
@@ -6776,6 +6868,13 @@
|
|
|
6776
6868
|
"username": {
|
|
6777
6869
|
"type": "string"
|
|
6778
6870
|
},
|
|
6871
|
+
"password": {
|
|
6872
|
+
"type": "string"
|
|
6873
|
+
},
|
|
6874
|
+
"realm": {
|
|
6875
|
+
"type": "string",
|
|
6876
|
+
"description": "For `grant_type=password`: the name of the database connection to sign in against. Defaults to the first database connection offered to the client."
|
|
6877
|
+
},
|
|
6779
6878
|
"otp": {
|
|
6780
6879
|
"type": "string"
|
|
6781
6880
|
},
|
|
@@ -6965,7 +7064,7 @@
|
|
|
6965
7064
|
},
|
|
6966
7065
|
"ErrorCode": {
|
|
6967
7066
|
"type": "string",
|
|
6968
|
-
"description": "Machine-readable error code. One HTTP status per code.\n\n- `bad_request` (400): The request is malformed. `message` says what is wrong.\n- `validation_error` (400): The body, query or path failed schema validation. `details.issues` lists each failing field.\n- `unauthorized` (401): The request carries no valid credentials.\n- `payment_required` (402): The feature is not included in the current plan.\n- `forbidden` (403): The credentials are valid but do not allow this operation.\n- `not_found` (404): The resource does not exist in this account.\n- `method_not_allowed` (405): The HTTP method is not supported on this path.\n- `conflict` (409): The request conflicts with the current state of the resource.\n- `payload_too_large` (413): The request body exceeds the size limit.\n- `unsupported_media_type` (415): The `Content-Type` is not accepted by this endpoint.\n- `unprocessable_entity` (422): The request is well-formed but cannot be processed.\n- `too_many_requests` (429): Rate limit exceeded. Honour the `Retry-After` header.\n- `internal_error` (500): Unexpected server error. Retry later; the request id is logged.\n- `already_exists` (400): A resource with the same unique field already exists (for a user, usually `email`). `details.fields` names the field.\n- `invalid_id` (400): The id in the path is not a valid id for this resource.\n- `account_not_found` (404): No Auth Account matches the request (domain, header or token).\n- `invalid_query` (400): The `?query=` FaableQL expression could not be parsed.\n- `search_not_supported` (400): This resource does not support `?search=`.\n- `invalid_expand` (400): An `?expand=` path is not allowed on this resource.\n- `access_denied` (401): The caller may not access this row (ownership or machine-to-machine restriction).\n- `insufficient_scope` (403): The token lacks a scope this operation requires. `message` names it.\n- `team_required` (400): An Auth Account must belong to a project (team).\n- `account_limit_reached` (409): The project already has the maximum number of Auth Accounts.\n- `invalid_project_id` (400): The project id is not of the form `project_<hex>` or `team_<hex>`.\n- `account_transfer_refused` (409): The Auth Account cannot be moved to that project. `details.blockers` lists why.\n- `plan_required` (402): The setting requires a higher plan. `message` says which.\n- `not_logged_in` (401): There is no signed-in session for this request.\n- `invalid_token` (401): The bearer token is missing, malformed, expired or has no subject.\n- `not_owner` (403): The caller may only perform this operation on their own user.\n- `user_suspended` (403): The user is suspended and cannot sign in or be modified.\n- `invalid_credentials` (400): The email/username or password is incorrect.\n- `login_denied` (401): A post-login Action denied the sign-in. `message` carries the reason it gave. On token grants it is a 403 with `error: invalid_grant`.\n- `signup_denied` (403): A pre-signup Action or an active block denied the sign-up. `message` carries the reason.\n- `client_credentials_denied` (401): An Action denied the client_credentials grant. `message` carries the reason.\n- `signup_disabled` (403): Self-service sign-up is disabled on this connection.\n- `email_taken` (409): Another user in this account already uses that email.\n- `invalid_email` (400): The email address is not valid.\n- `same_email` (400): The new email is the same as the current one.\n- `user_has_no_email` (400): The operation needs an email but the user has none.\n- `password_too_weak` (400): The password does not meet the connection policy. `message` lists each unmet rule.\n- `invalid_password_hash` (400): The imported password hash cannot be read, or its cost is above what a login can afford. `message` names the field.\n- `weak_password_hash` (400): The imported password hash uses a fast digest (MD5, SHA-1, SHA-2) or a cost below the minimum. `message` says which.\n- `invalid_code` (400): The verification code is wrong, expired or already used.\n- `invalid_phone` (400): The phone number is not E.164 and could not be resolved with the account default country. Include the country code.\n- `phone_changed` (400): The phone on the user changed after the code was sent. Start again.\n- `phone_already_verified` (409): The user already has a verified phone; the number cannot be swapped from the screen.\n- `sms_unavailable` (409): This account cannot send SMS right now. The suffix says why: `sms_unavailable:plan`, `:quota`, `:provider`.\n- `sms_failed` (409): The SMS provider rejected the message.\n- `invalid_state` (400): The `state` is missing, expired, or does not describe a resumable step.\n- `state_mismatch` (401): The `state` belongs to another account, session, client or ceremony.\n- `invalid_ticket` (400): The ticket does not exist or is not the kind this endpoint accepts.\n- `ticket_used` (400): The ticket was already consumed.\n- `ticket_expired` (400): The ticket is past its expiry.\n- `ticket_not_found` (404): No ticket with that id belongs to this user.\n- `credential_not_found` (404): The user has no password credential on this connection.\n- `invalid_link` (400): The magic link is malformed.\n- `expired_link` (400): The magic link token was not found or has expired.\n- `invalid_otp` (401): The one-time password is wrong or expired.\n- `invalid_client` (400): The `client_id` in the request does not name a client of this account.\n- `client_not_found` (404): No client with that `client_id`.\n- `client_mismatch` (401): The client belongs to a different account.\n- `invalid_client_metadata` (400): Dynamic client registration rejected a field (RFC 7591). `message` names it.\n- `invalid_connection` (400): The connection does not exist, is disabled, or is not of the type this flow needs.\n- `connection_required` (400): No connection was given and the client has no `default_connection`.\n- `connection_misconfigured` (400): The connection is missing settings needed to talk to its provider.\n- `passwordless_unavailable` (400): No passwordless connection is configured or enabled for this client.\n- `ambiguous_connection` (400): Several connections match; pass `connection_id`.\n- `invalid_redirect_uri` (400): The redirect URI is not registered for the client.\n- `origin_not_allowed` (403): The request `Origin` is not in the client's Allowed Web Origins.\n- `audience_not_found` (403): The `audience` does not name an API registered in this account.\n- `system_resource` (403): The resource is managed by Faable and cannot be modified or deleted.\n- `invalid_request` (400): A required OAuth parameter is missing or two of them are incompatible. `message` says which.\n- `invalid_device_code` (400): The device or user code is invalid or expired.\n- `provider_error` (400): The upstream identity provider returned an error. The suffix is the provider’s own code, when it sent one: `provider_error:bad_refresh_token` (the user must re-authorize), `provider_error:incorrect_client_credentials` (our configuration, the user can do nothing). `details.provider_error_description` carries the provider’s sentence.\n- `identity_already_linked` (409): That external identity is already linked to another user.\n- `identity_link_denied` (409): That external identity cannot be linked to this user.\n- `identity_conflict` (409): The user already has a linked identity for this connection.\n- `identity_orphaned` (400): The identity pointed at a user that no longer exists; it was removed. Sign in again.\n- `no_provider_token` (400): The identity holds no provider access token.\n- `no_refresh_token` (400): The identity holds no provider refresh token, so it cannot be refreshed.\n- `action_unavailable` (401): The Action that paused this login is disabled or belongs elsewhere.\n- `login_flow_misconfigured` (500): The login flow of this account cannot run. `message` carries the node error.\n- `mfa_required` (403): The login needs a second factor that this flow cannot collect, or one is still pending on the session.\n- `step_up_required` (403): Confirm an existing factor before changing your factors.\n- `interaction_required` (403): An Action asked for a redirect on a non-interactive flow.\n- `passkey_login_disabled` (400): Sign in with a passkey is not enabled for this client.\n- `mfa_pending` (401): A second-factor challenge is pending; answer it before continuing.\n- `mfa_invalid_code` (401): The authenticator code did not verify.\n- `mfa_invalid_recovery_code` (401): The recovery code did not verify.\n- `too_many_attempts` (429): Too many wrong codes. Wait a few minutes and try again.\n- `totp_not_allowed` (401): This account does not accept authenticator apps.\n- `no_usable_factor` (400): The user has no confirmed second factor to challenge.\n- `factor_not_found` (400): No factor with that id belongs to this user.\n- `factor_already_confirmed` (400): The factor was already confirmed.\n- `invalid_factor` (400): The factor cannot be verified (no secret material).\n- `session_missing` (401): The session that started this login no longer exists.\n- `passkey_verification_failed` (400): The WebAuthn response could not be verified.\n- `no_passkey_enrolled` (400): The user has no passkey to sign in with.\n- `malformed_credential` (400): The WebAuthn credential is malformed.\n- `unknown_passkey` (401): The passkey is not enrolled for this user.\n- `invalid_passkey` (401): The passkey assertion did not verify.\n- `invite_not_found` (404): No invite with that id in this account.\n- `invite_used` (400): The invite was already accepted.\n- `already_member` (400): The user is already a member of the team.\n- `not_a_member` (404): The user is not a member of the team.\n- `role_not_found` (404): No role with that id in this account.\n- `invalid_role` (400): The role belongs to another account.\n- `flow_not_found` (400): The login flow does not exist in this account.\n- `revision_not_found` (404): The revision is not in the flow history.",
|
|
7067
|
+
"description": "Machine-readable error code. One HTTP status per code.\n\n- `bad_request` (400): The request is malformed. `message` says what is wrong.\n- `validation_error` (400): The body, query or path failed schema validation. `details.issues` lists each failing field.\n- `unauthorized` (401): The request carries no valid credentials.\n- `payment_required` (402): The feature is not included in the current plan.\n- `forbidden` (403): The credentials are valid but do not allow this operation.\n- `not_found` (404): The resource does not exist in this account.\n- `method_not_allowed` (405): The HTTP method is not supported on this path.\n- `conflict` (409): The request conflicts with the current state of the resource.\n- `payload_too_large` (413): The request body exceeds the size limit.\n- `unsupported_media_type` (415): The `Content-Type` is not accepted by this endpoint.\n- `unprocessable_entity` (422): The request is well-formed but cannot be processed.\n- `too_many_requests` (429): Rate limit exceeded. Honour the `Retry-After` header.\n- `internal_error` (500): Unexpected server error. Retry later; the request id is logged.\n- `already_exists` (400): A resource with the same unique field already exists (for a user, usually `email`). `details.fields` names the field.\n- `invalid_id` (400): The id in the path is not a valid id for this resource.\n- `account_not_found` (404): No Auth Account matches the request (domain, header or token).\n- `invalid_query` (400): The `?query=` FaableQL expression could not be parsed.\n- `search_not_supported` (400): This resource does not support `?search=`.\n- `invalid_expand` (400): An `?expand=` path is not allowed on this resource.\n- `access_denied` (401): The caller may not access this row (ownership or machine-to-machine restriction).\n- `insufficient_scope` (403): The token lacks a scope this operation requires. `message` names it.\n- `team_required` (400): An Auth Account must belong to a project (team).\n- `account_limit_reached` (409): The project already has the maximum number of Auth Accounts.\n- `invalid_project_id` (400): The project id is not of the form `project_<hex>` or `team_<hex>`.\n- `account_transfer_refused` (409): The Auth Account cannot be moved to that project. `details.blockers` lists why.\n- `plan_required` (402): The setting requires a higher plan. `message` says which.\n- `not_logged_in` (401): There is no signed-in session for this request.\n- `invalid_token` (401): The bearer token is missing, malformed, expired or has no subject.\n- `not_owner` (403): The caller may only perform this operation on their own user.\n- `user_suspended` (403): The user is suspended and cannot sign in or be modified.\n- `invalid_credentials` (400): The email/username or password is incorrect.\n- `login_denied` (401): A post-login Action denied the sign-in. `message` carries the reason it gave. On token grants it is a 403 with `error: invalid_grant`.\n- `signup_denied` (403): A pre-signup Action or an active block denied the sign-up. `message` carries the reason.\n- `client_credentials_denied` (401): An Action denied the client_credentials grant. `message` carries the reason.\n- `signup_disabled` (403): Self-service sign-up is disabled on this connection.\n- `email_taken` (409): Another user in this account already uses that email.\n- `invalid_email` (400): The email address is not valid.\n- `same_email` (400): The new email is the same as the current one.\n- `user_has_no_email` (400): The operation needs an email but the user has none.\n- `password_too_weak` (400): The password does not meet the connection policy. `message` lists each unmet rule.\n- `invalid_password_hash` (400): The imported password hash cannot be read, or its cost is above what a login can afford. `message` names the field.\n- `weak_password_hash` (400): The imported password hash uses a fast digest (MD5, SHA-1, SHA-2) or a cost below the minimum. `message` says which.\n- `invalid_code` (400): The verification code is wrong, expired or already used.\n- `invalid_phone` (400): The phone number is not E.164 and could not be resolved with the account default country. Include the country code.\n- `phone_changed` (400): The phone on the user changed after the code was sent. Start again.\n- `phone_already_verified` (409): The user already has a verified phone; the number cannot be swapped from the screen.\n- `sms_unavailable` (409): This account cannot send SMS right now. The suffix says why: `sms_unavailable:plan`, `:quota`, `:provider`.\n- `sms_failed` (409): The SMS provider rejected the message.\n- `invalid_state` (400): The `state` is missing, expired, or does not describe a resumable step.\n- `state_mismatch` (401): The `state` belongs to another account, session, client or ceremony.\n- `invalid_ticket` (400): The ticket does not exist or is not the kind this endpoint accepts.\n- `ticket_used` (400): The ticket was already consumed.\n- `ticket_expired` (400): The ticket is past its expiry.\n- `ticket_not_found` (404): No ticket with that id belongs to this user.\n- `credential_not_found` (404): The user has no password credential on this connection.\n- `invalid_link` (400): The magic link is malformed.\n- `expired_link` (400): The magic link token was not found or has expired.\n- `invalid_otp` (401): The one-time password is wrong or expired.\n- `invalid_client` (400): The `client_id` in the request does not name a client of this account.\n- `client_not_found` (404): No client with that `client_id`.\n- `client_mismatch` (401): The client belongs to a different account.\n- `invalid_client_metadata` (400): Dynamic client registration rejected a field (RFC 7591). `message` names it.\n- `invalid_connection` (400): The connection does not exist, is disabled, or is not of the type this flow needs.\n- `connection_required` (400): No connection was given and the client has no `default_connection`.\n- `connection_misconfigured` (400): The connection is missing settings needed to talk to its provider.\n- `passwordless_unavailable` (400): No passwordless connection is configured or enabled for this client.\n- `ambiguous_connection` (400): Several connections match; pass `connection_id`.\n- `invalid_redirect_uri` (400): The redirect URI is not registered for the client.\n- `origin_not_allowed` (403): The request `Origin` is not in the client's Allowed Web Origins.\n- `audience_not_found` (403): The `audience` does not name an API registered in this account.\n- `system_resource` (403): The resource is managed by Faable and cannot be modified or deleted.\n- `invalid_request` (400): A required OAuth parameter is missing or two of them are incompatible. `message` says which.\n- `invalid_device_code` (400): The device or user code is invalid or expired.\n- `provider_error` (400): The upstream identity provider returned an error. The suffix is the provider’s own code, when it sent one: `provider_error:bad_refresh_token` (the user must re-authorize), `provider_error:incorrect_client_credentials` (our configuration, the user can do nothing). `details.provider_error_description` carries the provider’s sentence.\n- `identity_already_linked` (409): That external identity is already linked to another user.\n- `identity_link_denied` (409): That external identity cannot be linked to this user.\n- `identity_conflict` (409): The user already has a linked identity for this connection.\n- `identity_orphaned` (400): The identity pointed at a user that no longer exists; it was removed. Sign in again.\n- `no_provider_token` (400): The identity holds no provider access token.\n- `no_refresh_token` (400): The identity holds no provider refresh token, so it cannot be refreshed.\n- `action_unavailable` (401): The Action that paused this login is disabled or belongs elsewhere.\n- `login_flow_misconfigured` (500): The login flow of this account cannot run. `message` carries the node error.\n- `mfa_required` (403): The login needs a second factor that this flow cannot collect, or one is still pending on the session.\n- `step_up_required` (403): Confirm an existing factor before changing your factors.\n- `interaction_required` (403): An Action asked for a redirect on a non-interactive flow.\n- `passkey_login_disabled` (400): Sign in with a passkey is not enabled for this client.\n- `mfa_pending` (401): A second-factor challenge is pending; answer it before continuing.\n- `mfa_invalid_code` (401): The authenticator code did not verify.\n- `mfa_invalid_recovery_code` (401): The recovery code did not verify.\n- `too_many_attempts` (429): Too many wrong codes. Wait a few minutes and try again.\n- `too_many_login_attempts` (429): Too many failed sign-in attempts for this email or username from this network. Wait a few minutes and try again.\n- `totp_not_allowed` (401): This account does not accept authenticator apps.\n- `no_usable_factor` (400): The user has no confirmed second factor to challenge.\n- `factor_not_found` (400): No factor with that id belongs to this user.\n- `factor_already_confirmed` (400): The factor was already confirmed.\n- `invalid_factor` (400): The factor cannot be verified (no secret material).\n- `session_missing` (401): The session that started this login no longer exists.\n- `passkey_verification_failed` (400): The WebAuthn response could not be verified.\n- `no_passkey_enrolled` (400): The user has no passkey to sign in with.\n- `malformed_credential` (400): The WebAuthn credential is malformed.\n- `unknown_passkey` (401): The passkey is not enrolled for this user.\n- `invalid_passkey` (401): The passkey assertion did not verify.\n- `invite_not_found` (404): No invite with that id in this account.\n- `invite_used` (400): The invite was already accepted.\n- `already_member` (400): The user is already a member of the team.\n- `not_a_member` (404): The user is not a member of the team.\n- `role_not_found` (404): No role with that id in this account.\n- `invalid_role` (400): The role belongs to another account.\n- `flow_not_found` (400): The login flow does not exist in this account.\n- `revision_not_found` (404): The revision is not in the flow history.",
|
|
6969
7068
|
"enum": [
|
|
6970
7069
|
"bad_request",
|
|
6971
7070
|
"validation_error",
|
|
@@ -7057,6 +7156,7 @@
|
|
|
7057
7156
|
"mfa_invalid_code",
|
|
7058
7157
|
"mfa_invalid_recovery_code",
|
|
7059
7158
|
"too_many_attempts",
|
|
7159
|
+
"too_many_login_attempts",
|
|
7060
7160
|
"totp_not_allowed",
|
|
7061
7161
|
"no_usable_factor",
|
|
7062
7162
|
"factor_not_found",
|
|
@@ -12541,6 +12641,29 @@
|
|
|
12541
12641
|
"disable_signup": {
|
|
12542
12642
|
"type": "boolean"
|
|
12543
12643
|
},
|
|
12644
|
+
"login_identifier": {
|
|
12645
|
+
"anyOf": [
|
|
12646
|
+
{
|
|
12647
|
+
"type": "string",
|
|
12648
|
+
"enum": [
|
|
12649
|
+
"email"
|
|
12650
|
+
]
|
|
12651
|
+
},
|
|
12652
|
+
{
|
|
12653
|
+
"type": "string",
|
|
12654
|
+
"enum": [
|
|
12655
|
+
"username"
|
|
12656
|
+
]
|
|
12657
|
+
},
|
|
12658
|
+
{
|
|
12659
|
+
"type": "string",
|
|
12660
|
+
"enum": [
|
|
12661
|
+
"email_or_username"
|
|
12662
|
+
]
|
|
12663
|
+
}
|
|
12664
|
+
],
|
|
12665
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
12666
|
+
},
|
|
12544
12667
|
"metadata": {
|
|
12545
12668
|
"type": "object",
|
|
12546
12669
|
"properties": {},
|
|
@@ -12753,6 +12876,29 @@
|
|
|
12753
12876
|
},
|
|
12754
12877
|
"description": "Password policy enforced when writing a password through this database connection (password reset and admin set-password). `level` is an Auth0-style preset (none/low/fair/good/excellent); the dashboard expands it into the explicit rule fields when saving. The rule fields override the preset baseline. When unset on the connection, the server applies the `good` default. Does not affect login."
|
|
12755
12878
|
},
|
|
12879
|
+
"login_identifier": {
|
|
12880
|
+
"anyOf": [
|
|
12881
|
+
{
|
|
12882
|
+
"type": "string",
|
|
12883
|
+
"enum": [
|
|
12884
|
+
"email"
|
|
12885
|
+
]
|
|
12886
|
+
},
|
|
12887
|
+
{
|
|
12888
|
+
"type": "string",
|
|
12889
|
+
"enum": [
|
|
12890
|
+
"username"
|
|
12891
|
+
]
|
|
12892
|
+
},
|
|
12893
|
+
{
|
|
12894
|
+
"type": "string",
|
|
12895
|
+
"enum": [
|
|
12896
|
+
"email_or_username"
|
|
12897
|
+
]
|
|
12898
|
+
}
|
|
12899
|
+
],
|
|
12900
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
12901
|
+
},
|
|
12756
12902
|
"disable_signup": {
|
|
12757
12903
|
"type": "boolean",
|
|
12758
12904
|
"description": "When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`."
|
|
@@ -13154,6 +13300,29 @@
|
|
|
13154
13300
|
},
|
|
13155
13301
|
"description": "Password policy enforced when writing a password through this database connection (password reset and admin set-password). `level` is an Auth0-style preset (none/low/fair/good/excellent); the dashboard expands it into the explicit rule fields when saving. The rule fields override the preset baseline. When unset on the connection, the server applies the `good` default. Does not affect login."
|
|
13156
13302
|
},
|
|
13303
|
+
"login_identifier": {
|
|
13304
|
+
"anyOf": [
|
|
13305
|
+
{
|
|
13306
|
+
"type": "string",
|
|
13307
|
+
"enum": [
|
|
13308
|
+
"email"
|
|
13309
|
+
]
|
|
13310
|
+
},
|
|
13311
|
+
{
|
|
13312
|
+
"type": "string",
|
|
13313
|
+
"enum": [
|
|
13314
|
+
"username"
|
|
13315
|
+
]
|
|
13316
|
+
},
|
|
13317
|
+
{
|
|
13318
|
+
"type": "string",
|
|
13319
|
+
"enum": [
|
|
13320
|
+
"email_or_username"
|
|
13321
|
+
]
|
|
13322
|
+
}
|
|
13323
|
+
],
|
|
13324
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
13325
|
+
},
|
|
13157
13326
|
"disable_signup": {
|
|
13158
13327
|
"type": "boolean",
|
|
13159
13328
|
"description": "When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`."
|
|
@@ -13498,6 +13667,29 @@
|
|
|
13498
13667
|
},
|
|
13499
13668
|
"disable_signup": {
|
|
13500
13669
|
"type": "boolean"
|
|
13670
|
+
},
|
|
13671
|
+
"login_identifier": {
|
|
13672
|
+
"anyOf": [
|
|
13673
|
+
{
|
|
13674
|
+
"type": "string",
|
|
13675
|
+
"enum": [
|
|
13676
|
+
"email"
|
|
13677
|
+
]
|
|
13678
|
+
},
|
|
13679
|
+
{
|
|
13680
|
+
"type": "string",
|
|
13681
|
+
"enum": [
|
|
13682
|
+
"username"
|
|
13683
|
+
]
|
|
13684
|
+
},
|
|
13685
|
+
{
|
|
13686
|
+
"type": "string",
|
|
13687
|
+
"enum": [
|
|
13688
|
+
"email_or_username"
|
|
13689
|
+
]
|
|
13690
|
+
}
|
|
13691
|
+
],
|
|
13692
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
13501
13693
|
}
|
|
13502
13694
|
},
|
|
13503
13695
|
"description": "Partial update for a Connection. Only the supplied fields are modified. `connection_type` is intentionally excluded — changing it would orphan every identity already linked to this connection.",
|
|
@@ -13715,6 +13907,29 @@
|
|
|
13715
13907
|
},
|
|
13716
13908
|
"description": "Password policy enforced when writing a password through this database connection (password reset and admin set-password). `level` is an Auth0-style preset (none/low/fair/good/excellent); the dashboard expands it into the explicit rule fields when saving. The rule fields override the preset baseline. When unset on the connection, the server applies the `good` default. Does not affect login."
|
|
13717
13909
|
},
|
|
13910
|
+
"login_identifier": {
|
|
13911
|
+
"anyOf": [
|
|
13912
|
+
{
|
|
13913
|
+
"type": "string",
|
|
13914
|
+
"enum": [
|
|
13915
|
+
"email"
|
|
13916
|
+
]
|
|
13917
|
+
},
|
|
13918
|
+
{
|
|
13919
|
+
"type": "string",
|
|
13920
|
+
"enum": [
|
|
13921
|
+
"username"
|
|
13922
|
+
]
|
|
13923
|
+
},
|
|
13924
|
+
{
|
|
13925
|
+
"type": "string",
|
|
13926
|
+
"enum": [
|
|
13927
|
+
"email_or_username"
|
|
13928
|
+
]
|
|
13929
|
+
}
|
|
13930
|
+
],
|
|
13931
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
13932
|
+
},
|
|
13718
13933
|
"disable_signup": {
|
|
13719
13934
|
"type": "boolean",
|
|
13720
13935
|
"description": "When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`."
|
|
@@ -14116,6 +14331,29 @@
|
|
|
14116
14331
|
},
|
|
14117
14332
|
"description": "Password policy enforced when writing a password through this database connection (password reset and admin set-password). `level` is an Auth0-style preset (none/low/fair/good/excellent); the dashboard expands it into the explicit rule fields when saving. The rule fields override the preset baseline. When unset on the connection, the server applies the `good` default. Does not affect login."
|
|
14118
14333
|
},
|
|
14334
|
+
"login_identifier": {
|
|
14335
|
+
"anyOf": [
|
|
14336
|
+
{
|
|
14337
|
+
"type": "string",
|
|
14338
|
+
"enum": [
|
|
14339
|
+
"email"
|
|
14340
|
+
]
|
|
14341
|
+
},
|
|
14342
|
+
{
|
|
14343
|
+
"type": "string",
|
|
14344
|
+
"enum": [
|
|
14345
|
+
"username"
|
|
14346
|
+
]
|
|
14347
|
+
},
|
|
14348
|
+
{
|
|
14349
|
+
"type": "string",
|
|
14350
|
+
"enum": [
|
|
14351
|
+
"email_or_username"
|
|
14352
|
+
]
|
|
14353
|
+
}
|
|
14354
|
+
],
|
|
14355
|
+
"description": "What users of this database connection sign in with: `email`, `username`, or `email_or_username` (email first, then username). The login looks up only the matching field, and the hosted login screen asks for it — validating the address format under `email`. New database connections default to `email`; a connection created before this setting existed behaves as `email_or_username`. Only meaningful on `database` connections."
|
|
14356
|
+
},
|
|
14119
14357
|
"disable_signup": {
|
|
14120
14358
|
"type": "boolean",
|
|
14121
14359
|
"description": "When true, the public self-service signup endpoint (`POST /dbconnections/signup`) rejects new registrations against this database connection with `403 signup_disabled`. Defaults to false (signup allowed). Only meaningful on `database` connections; mirrors Auth0 `disable_signup`."
|
|
@@ -55529,6 +55767,23 @@
|
|
|
55529
55767
|
"name": "username",
|
|
55530
55768
|
"required": false
|
|
55531
55769
|
},
|
|
55770
|
+
{
|
|
55771
|
+
"schema": {
|
|
55772
|
+
"type": "string"
|
|
55773
|
+
},
|
|
55774
|
+
"in": "query",
|
|
55775
|
+
"name": "password",
|
|
55776
|
+
"required": false
|
|
55777
|
+
},
|
|
55778
|
+
{
|
|
55779
|
+
"schema": {
|
|
55780
|
+
"type": "string"
|
|
55781
|
+
},
|
|
55782
|
+
"in": "query",
|
|
55783
|
+
"name": "realm",
|
|
55784
|
+
"required": false,
|
|
55785
|
+
"description": "For `grant_type=password`: the name of the database connection to sign in against. Defaults to the first database connection offered to the client."
|
|
55786
|
+
},
|
|
55532
55787
|
{
|
|
55533
55788
|
"schema": {
|
|
55534
55789
|
"type": "string"
|
|
@@ -55836,6 +56091,13 @@
|
|
|
55836
56091
|
"username": {
|
|
55837
56092
|
"type": "string"
|
|
55838
56093
|
},
|
|
56094
|
+
"password": {
|
|
56095
|
+
"type": "string"
|
|
56096
|
+
},
|
|
56097
|
+
"realm": {
|
|
56098
|
+
"type": "string",
|
|
56099
|
+
"description": "For `grant_type=password`: the name of the database connection to sign in against. Defaults to the first database connection offered to the client."
|
|
56100
|
+
},
|
|
55839
56101
|
"otp": {
|
|
55840
56102
|
"type": "string"
|
|
55841
56103
|
},
|
|
@@ -55987,6 +56249,23 @@
|
|
|
55987
56249
|
"name": "username",
|
|
55988
56250
|
"required": false
|
|
55989
56251
|
},
|
|
56252
|
+
{
|
|
56253
|
+
"schema": {
|
|
56254
|
+
"type": "string"
|
|
56255
|
+
},
|
|
56256
|
+
"in": "query",
|
|
56257
|
+
"name": "password",
|
|
56258
|
+
"required": false
|
|
56259
|
+
},
|
|
56260
|
+
{
|
|
56261
|
+
"schema": {
|
|
56262
|
+
"type": "string"
|
|
56263
|
+
},
|
|
56264
|
+
"in": "query",
|
|
56265
|
+
"name": "realm",
|
|
56266
|
+
"required": false,
|
|
56267
|
+
"description": "For `grant_type=password`: the name of the database connection to sign in against. Defaults to the first database connection offered to the client."
|
|
56268
|
+
},
|
|
55990
56269
|
{
|
|
55991
56270
|
"schema": {
|
|
55992
56271
|
"type": "string"
|