@faable/auth-sdk 2.7.41 → 2.7.43

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.
@@ -224,6 +224,26 @@ export interface paths {
224
224
  patch?: never;
225
225
  trace?: never;
226
226
  };
227
+ "/internal/usage/sms/range": {
228
+ parameters: {
229
+ query?: never;
230
+ header?: never;
231
+ path?: never;
232
+ cookie?: never;
233
+ };
234
+ /**
235
+ * SMS a project sent in a time range (platform)
236
+ * @description Sum of the hourly counters of SMS and WhatsApp messages one project handed to the provider between `from` (first full hour after it) and `to`. At most 40 days back. Platform token with `read:usage`.
237
+ */
238
+ get: operations["internal/smsUsageRange"];
239
+ put?: never;
240
+ post?: never;
241
+ delete?: never;
242
+ options?: never;
243
+ head?: never;
244
+ patch?: never;
245
+ trace?: never;
246
+ };
227
247
  "/internal/usage/m2m": {
228
248
  parameters: {
229
249
  query?: never;
@@ -1717,6 +1737,66 @@ export interface paths {
1717
1737
  patch?: never;
1718
1738
  trace?: never;
1719
1739
  };
1740
+ "/session": {
1741
+ parameters: {
1742
+ query?: never;
1743
+ header?: never;
1744
+ path?: never;
1745
+ cookie?: never;
1746
+ };
1747
+ /**
1748
+ * List Sessions
1749
+ * @description List Sessions
1750
+ */
1751
+ get: operations["session/list"];
1752
+ put?: never;
1753
+ post?: never;
1754
+ delete?: never;
1755
+ options?: never;
1756
+ head?: never;
1757
+ patch?: never;
1758
+ trace?: never;
1759
+ };
1760
+ "/session/{session_id}": {
1761
+ parameters: {
1762
+ query?: never;
1763
+ header?: never;
1764
+ path?: never;
1765
+ cookie?: never;
1766
+ };
1767
+ /**
1768
+ * Get Session
1769
+ * @description Get Session
1770
+ */
1771
+ get: operations["session/get"];
1772
+ put?: never;
1773
+ post?: never;
1774
+ delete?: never;
1775
+ options?: never;
1776
+ head?: never;
1777
+ patch?: never;
1778
+ trace?: never;
1779
+ };
1780
+ "/session/{session_id}/revoke": {
1781
+ parameters: {
1782
+ query?: never;
1783
+ header?: never;
1784
+ path?: never;
1785
+ cookie?: never;
1786
+ };
1787
+ get?: never;
1788
+ put?: never;
1789
+ /**
1790
+ * Revoke a session
1791
+ * @description Ends the session for good: the browser cookie behind it stops working, every refresh token issued through it is refused on its next use (`invalid_grant`), and the relying parties that took part in it are notified. Access and id tokens already issued keep working until they expire. The row stays, marked `revoked`, for the device history.
1792
+ */
1793
+ post: operations["session/revoke"];
1794
+ delete?: never;
1795
+ options?: never;
1796
+ head?: never;
1797
+ patch?: never;
1798
+ trace?: never;
1799
+ };
1720
1800
  "/customdomain/{customdomain_id}/retry": {
1721
1801
  parameters: {
1722
1802
  query?: never;
@@ -3776,6 +3856,46 @@ export interface paths {
3776
3856
  patch: operations["session/me_update"];
3777
3857
  trace?: never;
3778
3858
  };
3859
+ "/me/sessions": {
3860
+ parameters: {
3861
+ query?: never;
3862
+ header?: never;
3863
+ path?: never;
3864
+ cookie?: never;
3865
+ };
3866
+ /**
3867
+ * List the current user's active sessions
3868
+ * @description Every active session of the user behind the request (cookie or bearer), newest first; `current_session_id` names the one this request came through.
3869
+ */
3870
+ get: operations["session/meSessions"];
3871
+ put?: never;
3872
+ post?: never;
3873
+ delete?: never;
3874
+ options?: never;
3875
+ head?: never;
3876
+ patch?: never;
3877
+ trace?: never;
3878
+ };
3879
+ "/me/sessions/revoke-others": {
3880
+ parameters: {
3881
+ query?: never;
3882
+ header?: never;
3883
+ path?: never;
3884
+ cookie?: never;
3885
+ };
3886
+ get?: never;
3887
+ put?: never;
3888
+ /**
3889
+ * Sign the current user out everywhere else
3890
+ * @description Revokes every active session of the user except the one this request came through. Refresh tokens issued in the revoked sessions are refused on their next use; access and id tokens already issued keep working until they expire.
3891
+ */
3892
+ post: operations["session/meRevokeOtherSessions"];
3893
+ delete?: never;
3894
+ options?: never;
3895
+ head?: never;
3896
+ patch?: never;
3897
+ trace?: never;
3898
+ };
3779
3899
  "/logout": {
3780
3900
  parameters: {
3781
3901
  query?: never;
@@ -6020,6 +6140,58 @@ export interface components {
6020
6140
  LogMetadata: {
6021
6141
  [key: string]: unknown;
6022
6142
  };
6143
+ /** @description Session */
6144
+ Session: {
6145
+ /** @description Session ID */
6146
+ id: string;
6147
+ user: components["schemas"]["User"] | string | unknown;
6148
+ /** @description OIDC session id. Every id_token minted for this session carries it as the `sid` claim; a back-channel or front-channel logout names the session with it. */
6149
+ sid: string;
6150
+ /** @description `active` or `revoked`. An active session whose `expires_at` is in the past has expired: nothing can refresh it any more, but the row stays for the history. */
6151
+ status: "active" | "revoked";
6152
+ /** @description Client IP at the last authentication. */
6153
+ ip?: string;
6154
+ /** @description Raw `User-Agent` header at the last authentication. */
6155
+ user_agent?: string;
6156
+ client?: components["schemas"]["Client"] | string | unknown;
6157
+ connection?: components["schemas"]["Connection"] | string | unknown;
6158
+ /** @description Issuer URL the session was minted on. */
6159
+ issuer?: string;
6160
+ /**
6161
+ * Format: date-time
6162
+ * @description Last authentication or token refresh through this session. Each refresh slides `expires_at` 30 days from here.
6163
+ */
6164
+ last_seen_at: string;
6165
+ /**
6166
+ * Format: date-time
6167
+ * @description When the session stops being usable unless something refreshes it first.
6168
+ */
6169
+ expires_at: string;
6170
+ /** Format: date-time */
6171
+ revoked_at?: string;
6172
+ /** @description `admin`: revoked through the Management API. `logout`: the user signed out. `user`: the user revoked it from another device. */
6173
+ revoked_reason?: "admin" | "logout" | "user";
6174
+ /** @description Object is related with this account */
6175
+ account: string;
6176
+ /**
6177
+ * @description SessionMetadata
6178
+ * @default {}
6179
+ */
6180
+ metadata: {
6181
+ [key: string]: unknown;
6182
+ };
6183
+ /** @description Session creation date */
6184
+ createdAt: string;
6185
+ /** @description Session updated date */
6186
+ updatedAt?: string;
6187
+ };
6188
+ /**
6189
+ * @description SessionMetadata
6190
+ * @default {}
6191
+ */
6192
+ SessionMetadata: {
6193
+ [key: string]: unknown;
6194
+ };
6023
6195
  /** @description Customdomain */
6024
6196
  Customdomain: {
6025
6197
  /** @description Customdomain ID */
@@ -6383,6 +6555,7 @@ export interface components {
6383
6555
  * - `account_transfer_refused` (409): The Auth Account cannot be moved to that project. `details.blockers` lists why.
6384
6556
  * - `plan_required` (402): The setting requires a higher plan. `message` says which.
6385
6557
  * - `not_logged_in` (401): There is no signed-in session for this request.
6558
+ * - `session_already_revoked` (409): The session was already revoked.
6386
6559
  * - `invalid_token` (401): The bearer token is missing, malformed, expired or has no subject.
6387
6560
  * - `not_owner` (403): The caller may only perform this operation on their own user.
6388
6561
  * - `user_suspended` (403): The user is suspended and cannot sign in or be modified.
@@ -6469,7 +6642,7 @@ export interface components {
6469
6642
  * - `revision_not_found` (404): The revision is not in the flow history.
6470
6643
  * @enum {string}
6471
6644
  */
6472
- 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" | "m2m_quota_exceeded" | "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";
6645
+ 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" | "session_already_revoked" | "invalid_token" | "not_owner" | "user_suspended" | "invalid_credentials" | "login_denied" | "signup_denied" | "client_credentials_denied" | "m2m_quota_exceeded" | "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";
6473
6646
  /** @description Every error response has this shape. Branch on `error_code`, never on `message`: the message is written for a person and may change. */
6474
6647
  ErrorResponse: {
6475
6648
  /** @description The HTTP status, repeated. */
@@ -8132,6 +8305,116 @@ export interface operations {
8132
8305
  };
8133
8306
  };
8134
8307
  };
8308
+ "internal/smsUsageRange": {
8309
+ parameters: {
8310
+ query: {
8311
+ /** @description The project to read, as `team_<hex>`. */
8312
+ team: string;
8313
+ /** @description Start of the range — the subscription period start. Counted from the first full hour after it. */
8314
+ from: string;
8315
+ /** @description End of the range. Defaults to now. */
8316
+ to?: string;
8317
+ };
8318
+ header?: never;
8319
+ path?: never;
8320
+ cookie?: never;
8321
+ };
8322
+ requestBody?: never;
8323
+ responses: {
8324
+ /** @description Default Response */
8325
+ 200: {
8326
+ headers: {
8327
+ [name: string]: unknown;
8328
+ };
8329
+ content: {
8330
+ "application/json": {
8331
+ team: string;
8332
+ from: string;
8333
+ to: string;
8334
+ sent: number;
8335
+ };
8336
+ };
8337
+ };
8338
+ /** @description `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field. */
8339
+ 400: {
8340
+ headers: {
8341
+ [name: string]: unknown;
8342
+ };
8343
+ content: {
8344
+ "application/json": components["schemas"]["ErrorResponse"] & {
8345
+ /** @enum {string} */
8346
+ error_code?: "validation_error";
8347
+ };
8348
+ };
8349
+ };
8350
+ /** @description `unauthorized` — The request carries no valid credentials. */
8351
+ 401: {
8352
+ headers: {
8353
+ [name: string]: unknown;
8354
+ };
8355
+ content: {
8356
+ "application/json": components["schemas"]["ErrorResponse"] & {
8357
+ /** @enum {string} */
8358
+ error_code?: "unauthorized";
8359
+ };
8360
+ };
8361
+ };
8362
+ /**
8363
+ * @description `forbidden` — The credentials are valid but do not allow this operation.
8364
+ *
8365
+ * `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
8366
+ *
8367
+ * `user_suspended` — The user is suspended and cannot sign in or be modified.
8368
+ */
8369
+ 403: {
8370
+ headers: {
8371
+ [name: string]: unknown;
8372
+ };
8373
+ content: {
8374
+ "application/json": components["schemas"]["ErrorResponse"] & {
8375
+ /** @enum {string} */
8376
+ error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
8377
+ };
8378
+ };
8379
+ };
8380
+ /** @description `account_not_found` — No Auth Account matches the request (domain, header or token). */
8381
+ 404: {
8382
+ headers: {
8383
+ [name: string]: unknown;
8384
+ };
8385
+ content: {
8386
+ "application/json": components["schemas"]["ErrorResponse"] & {
8387
+ /** @enum {string} */
8388
+ error_code?: "account_not_found";
8389
+ };
8390
+ };
8391
+ };
8392
+ /** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
8393
+ 429: {
8394
+ headers: {
8395
+ [name: string]: unknown;
8396
+ };
8397
+ content: {
8398
+ "application/json": components["schemas"]["ErrorResponse"] & {
8399
+ /** @enum {string} */
8400
+ error_code?: "too_many_requests";
8401
+ };
8402
+ };
8403
+ };
8404
+ /** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
8405
+ 500: {
8406
+ headers: {
8407
+ [name: string]: unknown;
8408
+ };
8409
+ content: {
8410
+ "application/json": components["schemas"]["ErrorResponse"] & {
8411
+ /** @enum {string} */
8412
+ error_code?: "internal_error";
8413
+ };
8414
+ };
8415
+ };
8416
+ };
8417
+ };
8135
8418
  "internal/m2mUsage": {
8136
8419
  parameters: {
8137
8420
  query: {
@@ -23580,31 +23863,480 @@ export interface operations {
23580
23863
  };
23581
23864
  };
23582
23865
  };
23583
- "customdomain/retry": {
23866
+ "session/list": {
23584
23867
  parameters: {
23585
- query?: never;
23586
- header?: never;
23587
- path: {
23588
- customdomain_id: string;
23589
- };
23590
- cookie?: never;
23591
- };
23592
- requestBody?: never;
23593
- responses: {
23594
- /** @description Default Response */
23595
- 200: {
23596
- headers: {
23597
- [name: string]: unknown;
23598
- };
23599
- content?: never;
23600
- };
23601
- /** @description `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field. */
23602
- 400: {
23603
- headers: {
23604
- [name: string]: unknown;
23605
- };
23606
- content: {
23607
- "application/json": components["schemas"]["ErrorResponse"] & {
23868
+ query?: {
23869
+ /** @description Number of items per page (max 200) */
23870
+ pageSize?: number;
23871
+ /** @description Cursor for next page */
23872
+ cursor?: string;
23873
+ /** @description Cursor returned by the previous page */
23874
+ next?: string;
23875
+ /** @description Exact match on `user`. Equivalent to `?query=user:<value>`. */
23876
+ user?: string;
23877
+ /** @description Exact match on `client`. Equivalent to `?query=client:<value>`. */
23878
+ client?: string;
23879
+ /** @description Exact match on `connection`. Equivalent to `?query=connection:<value>`. */
23880
+ connection?: string;
23881
+ /** @description Exact match on `status`. Equivalent to `?query=status:<value>`. */
23882
+ status?: string;
23883
+ /** @description Exact match on `sid`. Equivalent to `?query=sid:<value>`. */
23884
+ sid?: string;
23885
+ /** @description Exact match on `since`. Equivalent to `?query=since:<value>`. */
23886
+ since?: string;
23887
+ /** @description Exact match on `until`. Equivalent to `?query=until:<value>`. */
23888
+ until?: string;
23889
+ /** @description Filter using a FaableQL query */
23890
+ query?: string;
23891
+ /** @description Expand id-only fields in the response. Pass one path per entry (e.g. `?expand=user`). */
23892
+ expand?: ("user" | "client" | "connection")[];
23893
+ };
23894
+ header?: never;
23895
+ path?: never;
23896
+ cookie?: never;
23897
+ };
23898
+ requestBody?: never;
23899
+ responses: {
23900
+ /** @description Default Response */
23901
+ 200: {
23902
+ headers: {
23903
+ [name: string]: unknown;
23904
+ };
23905
+ content: {
23906
+ "application/json": {
23907
+ next: string | null;
23908
+ results: components["schemas"]["Session"][];
23909
+ };
23910
+ };
23911
+ };
23912
+ /**
23913
+ * @description `invalid_query` — The `?query=` FaableQL expression could not be parsed.
23914
+ *
23915
+ * `invalid_expand` — An `?expand=` path is not allowed on this resource.
23916
+ *
23917
+ * `search_not_supported` — This resource does not support `?search=`.
23918
+ *
23919
+ * `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
23920
+ */
23921
+ 400: {
23922
+ headers: {
23923
+ [name: string]: unknown;
23924
+ };
23925
+ content: {
23926
+ "application/json": components["schemas"]["ErrorResponse"] & {
23927
+ /** @enum {string} */
23928
+ error_code?: "invalid_query" | "invalid_expand" | "search_not_supported" | "validation_error";
23929
+ };
23930
+ };
23931
+ };
23932
+ /** @description `unauthorized` — The request carries no valid credentials. */
23933
+ 401: {
23934
+ headers: {
23935
+ [name: string]: unknown;
23936
+ };
23937
+ content: {
23938
+ "application/json": components["schemas"]["ErrorResponse"] & {
23939
+ /** @enum {string} */
23940
+ error_code?: "unauthorized";
23941
+ };
23942
+ };
23943
+ };
23944
+ /**
23945
+ * @description `forbidden` — The credentials are valid but do not allow this operation.
23946
+ *
23947
+ * `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
23948
+ *
23949
+ * `user_suspended` — The user is suspended and cannot sign in or be modified.
23950
+ */
23951
+ 403: {
23952
+ headers: {
23953
+ [name: string]: unknown;
23954
+ };
23955
+ content: {
23956
+ "application/json": components["schemas"]["ErrorResponse"] & {
23957
+ /** @enum {string} */
23958
+ error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
23959
+ };
23960
+ };
23961
+ };
23962
+ /** @description `account_not_found` — No Auth Account matches the request (domain, header or token). */
23963
+ 404: {
23964
+ headers: {
23965
+ [name: string]: unknown;
23966
+ };
23967
+ content: {
23968
+ "application/json": components["schemas"]["ErrorResponse"] & {
23969
+ /** @enum {string} */
23970
+ error_code?: "account_not_found";
23971
+ };
23972
+ };
23973
+ };
23974
+ /** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
23975
+ 429: {
23976
+ headers: {
23977
+ [name: string]: unknown;
23978
+ };
23979
+ content: {
23980
+ "application/json": components["schemas"]["ErrorResponse"] & {
23981
+ /** @enum {string} */
23982
+ error_code?: "too_many_requests";
23983
+ };
23984
+ };
23985
+ };
23986
+ /** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
23987
+ 500: {
23988
+ headers: {
23989
+ [name: string]: unknown;
23990
+ };
23991
+ content: {
23992
+ "application/json": components["schemas"]["ErrorResponse"] & {
23993
+ /** @enum {string} */
23994
+ error_code?: "internal_error";
23995
+ };
23996
+ };
23997
+ };
23998
+ };
23999
+ };
24000
+ "session/get": {
24001
+ parameters: {
24002
+ query?: {
24003
+ /** @description Expand id-only fields in the response. Pass one path per entry (e.g. `?expand=user`). */
24004
+ expand?: ("user" | "client" | "connection")[];
24005
+ };
24006
+ header?: never;
24007
+ path: {
24008
+ session_id: string;
24009
+ };
24010
+ cookie?: never;
24011
+ };
24012
+ requestBody?: never;
24013
+ responses: {
24014
+ /** @description Session */
24015
+ 200: {
24016
+ headers: {
24017
+ [name: string]: unknown;
24018
+ };
24019
+ content: {
24020
+ "application/json": {
24021
+ /** @description Session ID */
24022
+ id: string;
24023
+ user: components["schemas"]["User"] | string | unknown;
24024
+ /** @description OIDC session id. Every id_token minted for this session carries it as the `sid` claim; a back-channel or front-channel logout names the session with it. */
24025
+ sid: string;
24026
+ /** @description `active` or `revoked`. An active session whose `expires_at` is in the past has expired: nothing can refresh it any more, but the row stays for the history. */
24027
+ status: "active" | "revoked";
24028
+ /** @description Client IP at the last authentication. */
24029
+ ip?: string;
24030
+ /** @description Raw `User-Agent` header at the last authentication. */
24031
+ user_agent?: string;
24032
+ client?: components["schemas"]["Client"] | string | unknown;
24033
+ connection?: components["schemas"]["Connection"] | string | unknown;
24034
+ /** @description Issuer URL the session was minted on. */
24035
+ issuer?: string;
24036
+ /**
24037
+ * Format: date-time
24038
+ * @description Last authentication or token refresh through this session. Each refresh slides `expires_at` 30 days from here.
24039
+ */
24040
+ last_seen_at: string;
24041
+ /**
24042
+ * Format: date-time
24043
+ * @description When the session stops being usable unless something refreshes it first.
24044
+ */
24045
+ expires_at: string;
24046
+ /** Format: date-time */
24047
+ revoked_at?: string;
24048
+ /** @description `admin`: revoked through the Management API. `logout`: the user signed out. `user`: the user revoked it from another device. */
24049
+ revoked_reason?: "admin" | "logout" | "user";
24050
+ /** @description Object is related with this account */
24051
+ account: string;
24052
+ /**
24053
+ * @description SessionMetadata
24054
+ * @default {}
24055
+ */
24056
+ metadata: {
24057
+ [key: string]: unknown;
24058
+ };
24059
+ /** @description Session creation date */
24060
+ createdAt: string;
24061
+ /** @description Session updated date */
24062
+ updatedAt?: string;
24063
+ };
24064
+ };
24065
+ };
24066
+ /**
24067
+ * @description `invalid_id` — The id in the path is not a valid id for this resource.
24068
+ *
24069
+ * `invalid_expand` — An `?expand=` path is not allowed on this resource.
24070
+ *
24071
+ * `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field.
24072
+ */
24073
+ 400: {
24074
+ headers: {
24075
+ [name: string]: unknown;
24076
+ };
24077
+ content: {
24078
+ "application/json": components["schemas"]["ErrorResponse"] & {
24079
+ /** @enum {string} */
24080
+ error_code?: "invalid_id" | "invalid_expand" | "validation_error";
24081
+ };
24082
+ };
24083
+ };
24084
+ /** @description `unauthorized` — The request carries no valid credentials. */
24085
+ 401: {
24086
+ headers: {
24087
+ [name: string]: unknown;
24088
+ };
24089
+ content: {
24090
+ "application/json": components["schemas"]["ErrorResponse"] & {
24091
+ /** @enum {string} */
24092
+ error_code?: "unauthorized";
24093
+ };
24094
+ };
24095
+ };
24096
+ /**
24097
+ * @description `forbidden` — The credentials are valid but do not allow this operation.
24098
+ *
24099
+ * `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
24100
+ *
24101
+ * `user_suspended` — The user is suspended and cannot sign in or be modified.
24102
+ */
24103
+ 403: {
24104
+ headers: {
24105
+ [name: string]: unknown;
24106
+ };
24107
+ content: {
24108
+ "application/json": components["schemas"]["ErrorResponse"] & {
24109
+ /** @enum {string} */
24110
+ error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
24111
+ };
24112
+ };
24113
+ };
24114
+ /**
24115
+ * @description `not_found` — The resource does not exist in this account.
24116
+ *
24117
+ * `account_not_found` — No Auth Account matches the request (domain, header or token).
24118
+ */
24119
+ 404: {
24120
+ headers: {
24121
+ [name: string]: unknown;
24122
+ };
24123
+ content: {
24124
+ "application/json": components["schemas"]["ErrorResponse"] & {
24125
+ /** @enum {string} */
24126
+ error_code?: "not_found" | "account_not_found";
24127
+ };
24128
+ };
24129
+ };
24130
+ /** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
24131
+ 429: {
24132
+ headers: {
24133
+ [name: string]: unknown;
24134
+ };
24135
+ content: {
24136
+ "application/json": components["schemas"]["ErrorResponse"] & {
24137
+ /** @enum {string} */
24138
+ error_code?: "too_many_requests";
24139
+ };
24140
+ };
24141
+ };
24142
+ /** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
24143
+ 500: {
24144
+ headers: {
24145
+ [name: string]: unknown;
24146
+ };
24147
+ content: {
24148
+ "application/json": components["schemas"]["ErrorResponse"] & {
24149
+ /** @enum {string} */
24150
+ error_code?: "internal_error";
24151
+ };
24152
+ };
24153
+ };
24154
+ };
24155
+ };
24156
+ "session/revoke": {
24157
+ parameters: {
24158
+ query?: never;
24159
+ header?: never;
24160
+ path: {
24161
+ session_id: string;
24162
+ };
24163
+ cookie?: never;
24164
+ };
24165
+ requestBody?: never;
24166
+ responses: {
24167
+ /** @description Session */
24168
+ 200: {
24169
+ headers: {
24170
+ [name: string]: unknown;
24171
+ };
24172
+ content: {
24173
+ "application/json": {
24174
+ /** @description Session ID */
24175
+ id: string;
24176
+ user: components["schemas"]["User"] | string | unknown;
24177
+ /** @description OIDC session id. Every id_token minted for this session carries it as the `sid` claim; a back-channel or front-channel logout names the session with it. */
24178
+ sid: string;
24179
+ /** @description `active` or `revoked`. An active session whose `expires_at` is in the past has expired: nothing can refresh it any more, but the row stays for the history. */
24180
+ status: "active" | "revoked";
24181
+ /** @description Client IP at the last authentication. */
24182
+ ip?: string;
24183
+ /** @description Raw `User-Agent` header at the last authentication. */
24184
+ user_agent?: string;
24185
+ client?: components["schemas"]["Client"] | string | unknown;
24186
+ connection?: components["schemas"]["Connection"] | string | unknown;
24187
+ /** @description Issuer URL the session was minted on. */
24188
+ issuer?: string;
24189
+ /**
24190
+ * Format: date-time
24191
+ * @description Last authentication or token refresh through this session. Each refresh slides `expires_at` 30 days from here.
24192
+ */
24193
+ last_seen_at: string;
24194
+ /**
24195
+ * Format: date-time
24196
+ * @description When the session stops being usable unless something refreshes it first.
24197
+ */
24198
+ expires_at: string;
24199
+ /** Format: date-time */
24200
+ revoked_at?: string;
24201
+ /** @description `admin`: revoked through the Management API. `logout`: the user signed out. `user`: the user revoked it from another device. */
24202
+ revoked_reason?: "admin" | "logout" | "user";
24203
+ /** @description Object is related with this account */
24204
+ account: string;
24205
+ /**
24206
+ * @description SessionMetadata
24207
+ * @default {}
24208
+ */
24209
+ metadata: {
24210
+ [key: string]: unknown;
24211
+ };
24212
+ /** @description Session creation date */
24213
+ createdAt: string;
24214
+ /** @description Session updated date */
24215
+ updatedAt?: string;
24216
+ };
24217
+ };
24218
+ };
24219
+ /** @description `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field. */
24220
+ 400: {
24221
+ headers: {
24222
+ [name: string]: unknown;
24223
+ };
24224
+ content: {
24225
+ "application/json": components["schemas"]["ErrorResponse"] & {
24226
+ /** @enum {string} */
24227
+ error_code?: "validation_error";
24228
+ };
24229
+ };
24230
+ };
24231
+ /** @description `unauthorized` — The request carries no valid credentials. */
24232
+ 401: {
24233
+ headers: {
24234
+ [name: string]: unknown;
24235
+ };
24236
+ content: {
24237
+ "application/json": components["schemas"]["ErrorResponse"] & {
24238
+ /** @enum {string} */
24239
+ error_code?: "unauthorized";
24240
+ };
24241
+ };
24242
+ };
24243
+ /**
24244
+ * @description `forbidden` — The credentials are valid but do not allow this operation.
24245
+ *
24246
+ * `insufficient_scope` — The token lacks a scope this operation requires. `message` names it.
24247
+ *
24248
+ * `user_suspended` — The user is suspended and cannot sign in or be modified.
24249
+ */
24250
+ 403: {
24251
+ headers: {
24252
+ [name: string]: unknown;
24253
+ };
24254
+ content: {
24255
+ "application/json": components["schemas"]["ErrorResponse"] & {
24256
+ /** @enum {string} */
24257
+ error_code?: "forbidden" | "insufficient_scope" | "user_suspended";
24258
+ };
24259
+ };
24260
+ };
24261
+ /**
24262
+ * @description `not_found` — The resource does not exist in this account.
24263
+ *
24264
+ * `account_not_found` — No Auth Account matches the request (domain, header or token).
24265
+ */
24266
+ 404: {
24267
+ headers: {
24268
+ [name: string]: unknown;
24269
+ };
24270
+ content: {
24271
+ "application/json": components["schemas"]["ErrorResponse"] & {
24272
+ /** @enum {string} */
24273
+ error_code?: "not_found" | "account_not_found";
24274
+ };
24275
+ };
24276
+ };
24277
+ /** @description `session_already_revoked` — The session was already revoked. */
24278
+ 409: {
24279
+ headers: {
24280
+ [name: string]: unknown;
24281
+ };
24282
+ content: {
24283
+ "application/json": components["schemas"]["ErrorResponse"] & {
24284
+ /** @enum {string} */
24285
+ error_code?: "session_already_revoked";
24286
+ };
24287
+ };
24288
+ };
24289
+ /** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
24290
+ 429: {
24291
+ headers: {
24292
+ [name: string]: unknown;
24293
+ };
24294
+ content: {
24295
+ "application/json": components["schemas"]["ErrorResponse"] & {
24296
+ /** @enum {string} */
24297
+ error_code?: "too_many_requests";
24298
+ };
24299
+ };
24300
+ };
24301
+ /** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
24302
+ 500: {
24303
+ headers: {
24304
+ [name: string]: unknown;
24305
+ };
24306
+ content: {
24307
+ "application/json": components["schemas"]["ErrorResponse"] & {
24308
+ /** @enum {string} */
24309
+ error_code?: "internal_error";
24310
+ };
24311
+ };
24312
+ };
24313
+ };
24314
+ };
24315
+ "customdomain/retry": {
24316
+ parameters: {
24317
+ query?: never;
24318
+ header?: never;
24319
+ path: {
24320
+ customdomain_id: string;
24321
+ };
24322
+ cookie?: never;
24323
+ };
24324
+ requestBody?: never;
24325
+ responses: {
24326
+ /** @description Default Response */
24327
+ 200: {
24328
+ headers: {
24329
+ [name: string]: unknown;
24330
+ };
24331
+ content?: never;
24332
+ };
24333
+ /** @description `validation_error` — The body, query or path failed schema validation. `details.issues` lists each failing field. */
24334
+ 400: {
24335
+ headers: {
24336
+ [name: string]: unknown;
24337
+ };
24338
+ content: {
24339
+ "application/json": components["schemas"]["ErrorResponse"] & {
23608
24340
  /** @enum {string} */
23609
24341
  error_code?: "validation_error";
23610
24342
  };
@@ -25198,6 +25930,157 @@ export interface operations {
25198
25930
  };
25199
25931
  };
25200
25932
  };
25933
+ "session/meSessions": {
25934
+ parameters: {
25935
+ query?: never;
25936
+ header?: never;
25937
+ path?: never;
25938
+ cookie?: never;
25939
+ };
25940
+ requestBody?: never;
25941
+ responses: {
25942
+ /** @description Default Response */
25943
+ 200: {
25944
+ headers: {
25945
+ [name: string]: unknown;
25946
+ };
25947
+ content: {
25948
+ "application/json": {
25949
+ results: components["schemas"]["Session"][];
25950
+ /** @description The id of the session this request came through: the cookie, or the session the bearer token was issued in. Null when the token predates session ids. */
25951
+ current_session_id: string | null;
25952
+ };
25953
+ };
25954
+ };
25955
+ /**
25956
+ * @description `mfa_pending` — A second-factor challenge is pending; answer it before continuing.
25957
+ *
25958
+ * `not_logged_in` — There is no signed-in session for this request.
25959
+ */
25960
+ 401: {
25961
+ headers: {
25962
+ [name: string]: unknown;
25963
+ };
25964
+ content: {
25965
+ "application/json": components["schemas"]["ErrorResponse"] & {
25966
+ /** @enum {string} */
25967
+ error_code?: "mfa_pending" | "not_logged_in";
25968
+ };
25969
+ };
25970
+ };
25971
+ /** @description `account_not_found` — No Auth Account matches the request (domain, header or token). */
25972
+ 404: {
25973
+ headers: {
25974
+ [name: string]: unknown;
25975
+ };
25976
+ content: {
25977
+ "application/json": components["schemas"]["ErrorResponse"] & {
25978
+ /** @enum {string} */
25979
+ error_code?: "account_not_found";
25980
+ };
25981
+ };
25982
+ };
25983
+ /** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
25984
+ 429: {
25985
+ headers: {
25986
+ [name: string]: unknown;
25987
+ };
25988
+ content: {
25989
+ "application/json": components["schemas"]["ErrorResponse"] & {
25990
+ /** @enum {string} */
25991
+ error_code?: "too_many_requests";
25992
+ };
25993
+ };
25994
+ };
25995
+ /** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
25996
+ 500: {
25997
+ headers: {
25998
+ [name: string]: unknown;
25999
+ };
26000
+ content: {
26001
+ "application/json": components["schemas"]["ErrorResponse"] & {
26002
+ /** @enum {string} */
26003
+ error_code?: "internal_error";
26004
+ };
26005
+ };
26006
+ };
26007
+ };
26008
+ };
26009
+ "session/meRevokeOtherSessions": {
26010
+ parameters: {
26011
+ query?: never;
26012
+ header?: never;
26013
+ path?: never;
26014
+ cookie?: never;
26015
+ };
26016
+ requestBody?: never;
26017
+ responses: {
26018
+ /** @description Default Response */
26019
+ 200: {
26020
+ headers: {
26021
+ [name: string]: unknown;
26022
+ };
26023
+ content: {
26024
+ "application/json": {
26025
+ /** @description How many sessions were ended. */
26026
+ revoked: number;
26027
+ };
26028
+ };
26029
+ };
26030
+ /**
26031
+ * @description `mfa_pending` — A second-factor challenge is pending; answer it before continuing.
26032
+ *
26033
+ * `not_logged_in` — There is no signed-in session for this request.
26034
+ */
26035
+ 401: {
26036
+ headers: {
26037
+ [name: string]: unknown;
26038
+ };
26039
+ content: {
26040
+ "application/json": components["schemas"]["ErrorResponse"] & {
26041
+ /** @enum {string} */
26042
+ error_code?: "mfa_pending" | "not_logged_in";
26043
+ };
26044
+ };
26045
+ };
26046
+ /** @description `account_not_found` — No Auth Account matches the request (domain, header or token). */
26047
+ 404: {
26048
+ headers: {
26049
+ [name: string]: unknown;
26050
+ };
26051
+ content: {
26052
+ "application/json": components["schemas"]["ErrorResponse"] & {
26053
+ /** @enum {string} */
26054
+ error_code?: "account_not_found";
26055
+ };
26056
+ };
26057
+ };
26058
+ /** @description `too_many_requests` — Rate limit exceeded. Honour the `Retry-After` header. */
26059
+ 429: {
26060
+ headers: {
26061
+ [name: string]: unknown;
26062
+ };
26063
+ content: {
26064
+ "application/json": components["schemas"]["ErrorResponse"] & {
26065
+ /** @enum {string} */
26066
+ error_code?: "too_many_requests";
26067
+ };
26068
+ };
26069
+ };
26070
+ /** @description `internal_error` — Unexpected server error. Retry later; the request id is logged. */
26071
+ 500: {
26072
+ headers: {
26073
+ [name: string]: unknown;
26074
+ };
26075
+ content: {
26076
+ "application/json": components["schemas"]["ErrorResponse"] & {
26077
+ /** @enum {string} */
26078
+ error_code?: "internal_error";
26079
+ };
26080
+ };
26081
+ };
26082
+ };
26083
+ };
25201
26084
  "session/logout": {
25202
26085
  parameters: {
25203
26086
  query?: {