@fusebase/fusebase-gate-sdk 2.3.28-sdk.2 → 2.3.28-sdk.6

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.
@@ -5,7 +5,7 @@
5
5
  * Domain: org-users
6
6
  */
7
7
  import type { Client } from "../runtime/transport";
8
- import type { ClientAccountScheduledDeletionRequestContract, ClientAccountScheduledDeletionResponseContract, orgIdInPathRequired, OrgMemberRemoveResponseContract, OrgUserAddRequestContract, OrgUserAddResponseContract, OrgUserIdInPathRequired, OrgUserListResponseContract, OrgUserWorkspaceIdInPathRequired, WorkspaceMemberRemoveResponseContract } from "../types";
8
+ import type { ClientAccountScheduledDeletionRequestContract, ClientAccountScheduledDeletionResponseContract, orgIdInPathRequired, OrgMemberRemoveResponseContract, OrgUserAddRequestContract, OrgUserAddResponseContract, OrgUserIdInPathRequired, OrgUserListResponseContract, OrgUserWorkspaceIdInPathRequired, OrgWorkspaceMemberListResponseContract, WorkspaceMemberRemoveResponseContract } from "../types";
9
9
  export declare class OrgUsersApi {
10
10
  private client;
11
11
  constructor(client: Client);
@@ -30,6 +30,28 @@ export declare class OrgUsersApi {
30
30
  };
31
31
  headers?: Record<string, string>;
32
32
  }): Promise<OrgUserListResponseContract>;
33
+ /**
34
+ * List portal members
35
+ * Returns the members of a portal by its underlying workspaceId. Portal membership is currently represented by workspace membership (same semantics as removePortalMember), so Gate validates the workspace belongs to `orgId` and returns its members, each including the workspaceMember `id` (globalId). Requires org.members.read and org access.
36
+ */
37
+ listPortalMembers(params: {
38
+ path: {
39
+ orgId: orgIdInPathRequired;
40
+ workspaceId: OrgUserWorkspaceIdInPathRequired;
41
+ };
42
+ headers?: Record<string, string>;
43
+ }): Promise<OrgWorkspaceMemberListResponseContract>;
44
+ /**
45
+ * List workspace members
46
+ * Returns the members of a single workspace scoped to the organization. Gate validates that the workspace belongs to `orgId`, then calls org-service. Each member includes the workspaceMember `id` (globalId) needed by removeWorkspaceMember. Requires org.members.read and org access.
47
+ */
48
+ listWorkspaceMembers(params: {
49
+ path: {
50
+ orgId: orgIdInPathRequired;
51
+ workspaceId: OrgUserWorkspaceIdInPathRequired;
52
+ };
53
+ headers?: Record<string, string>;
54
+ }): Promise<OrgWorkspaceMemberListResponseContract>;
33
55
  /**
34
56
  * Remove organization member
35
57
  * Removes an organization member by numeric userId. Gate resolves the internal orgMember.globalId before calling org-service, and org-service cleans up workspace/group memberships for that org. Requires org.members.write and org access.
@@ -40,6 +40,34 @@ class OrgUsersApi {
40
40
  expectedContentType: "application/json",
41
41
  });
42
42
  }
43
+ /**
44
+ * List portal members
45
+ * Returns the members of a portal by its underlying workspaceId. Portal membership is currently represented by workspace membership (same semantics as removePortalMember), so Gate validates the workspace belongs to `orgId` and returns its members, each including the workspaceMember `id` (globalId). Requires org.members.read and org access.
46
+ */
47
+ async listPortalMembers(params) {
48
+ return this.client.request({
49
+ method: "GET",
50
+ path: "/:orgId/users/portals/:workspaceId/members",
51
+ pathParams: params.path,
52
+ headers: params.headers,
53
+ opId: "listPortalMembers",
54
+ expectedContentType: "application/json",
55
+ });
56
+ }
57
+ /**
58
+ * List workspace members
59
+ * Returns the members of a single workspace scoped to the organization. Gate validates that the workspace belongs to `orgId`, then calls org-service. Each member includes the workspaceMember `id` (globalId) needed by removeWorkspaceMember. Requires org.members.read and org access.
60
+ */
61
+ async listWorkspaceMembers(params) {
62
+ return this.client.request({
63
+ method: "GET",
64
+ path: "/:orgId/users/workspaces/:workspaceId/members",
65
+ pathParams: params.path,
66
+ headers: params.headers,
67
+ opId: "listWorkspaceMembers",
68
+ expectedContentType: "application/json",
69
+ });
70
+ }
43
71
  /**
44
72
  * Remove organization member
45
73
  * Removes an organization member by numeric userId. Gate resolves the internal orgMember.globalId before calling org-service, and org-service cleans up workspace/group memberships for that org. Requires org.members.write and org access.
@@ -5,7 +5,7 @@
5
5
  * Domain: tokens
6
6
  */
7
7
  import type { Client } from "../runtime/transport";
8
- import type { CreateTokenRequestContract, CreateTokenResponseContract, limitInQueryOptional, pageInQueryOptional, RevokeTokenResponseContract, scopeIdInQueryRequired, scopeTypeOrgInQueryRequired, TokenListResponseContract, TokenResponseContract, tokenSourceInQueryOptional, UpdateTokenRequestContract } from "../types";
8
+ import type { CreateTokenRequestContract, CreateTokenResponseContract, includeExpiredInQueryOptional, limitInQueryOptional, pageInQueryOptional, RevokeTokenResponseContract, scopeIdInQueryRequired, scopeTypeOrgInQueryRequired, TokenListResponseContract, TokenResponseContract, tokenSourceInQueryOptional, UpdateTokenRequestContract } from "../types";
9
9
  export declare class TokensApi {
10
10
  private client;
11
11
  constructor(client: Client);
@@ -35,6 +35,7 @@ export declare class TokensApi {
35
35
  * Retrieve a paginated list of API tokens for the authenticated user.
36
36
  * Optionally filter by scope type and scope ID (both must be provided together).
37
37
  * Optionally filter by token_source: manual (user-created) or app (app-provisioned).
38
+ * Expired tokens are hidden by default; pass include_expired=true to include them.
38
39
  * Defaults to page=1 and limit=50 (max 100).
39
40
  *
40
41
  */
@@ -43,6 +44,7 @@ export declare class TokensApi {
43
44
  scope_type: scopeTypeOrgInQueryRequired;
44
45
  scope_id: scopeIdInQueryRequired;
45
46
  token_source?: tokenSourceInQueryOptional;
47
+ include_expired?: includeExpiredInQueryOptional;
46
48
  page?: pageInQueryOptional;
47
49
  limit?: limitInQueryOptional;
48
50
  };
@@ -47,6 +47,7 @@ class TokensApi {
47
47
  * Retrieve a paginated list of API tokens for the authenticated user.
48
48
  * Optionally filter by scope type and scope ID (both must be provided together).
49
49
  * Optionally filter by token_source: manual (user-created) or app (app-provisioned).
50
+ * Expired tokens are hidden by default; pass include_expired=true to include them.
50
51
  * Defaults to page=1 and limit=50 (max 100).
51
52
  *
52
53
  */
@@ -39,6 +39,24 @@ export interface CreateAppMagicLinkResponseContract {
39
39
  */
40
40
  expiresAt: number;
41
41
  }
42
+ /**
43
+ * Request body for createAppClientInviteMagicLink (client→client invite flow).
44
+ * No role/access selectors: the invitee is always a client inheriting the
45
+ * inviter's app scope, enforced downstream in nimbus-ai.
46
+ */
47
+ export interface CreateAppClientInviteRequestContract {
48
+ /**
49
+ * Recipient email address. The link is dispatched to this address.
50
+ * @format email
51
+ */
52
+ email: string;
53
+ /**
54
+ * Relative app path to land on after activation (e.g. /proposals/abc).
55
+ * Omit for root.
56
+ * @nullable true
57
+ */
58
+ redirectPath?: string | null;
59
+ }
42
60
  /**
43
61
  * Request body for requestAppMagicLink (visitor self-service flow).
44
62
  */
@@ -7,23 +7,23 @@
7
7
  export type { AuthenticatedUserSummaryContract, MyOrgAccessResponseContract } from "./access/access";
8
8
  export type { AppApiOperationContract, AppApiOperationListResponseContract, CallAppApiRequestContract, CallAppApiResponseContract, PublishedAppContract, PublishedAppListResponseContract, VerifyAppApiContractsRequestContract, VerifyAppApiContractsResponseContract, VerifyCaseResultContract } from "./app-api/app-api";
9
9
  export type { AppPortalEmbedContract, ListAppPortalEmbedsResponseContract } from "./app-embed-targets/app-embed-targets";
10
- export type { ActivateAppMagicLinkResponseContract, BulkAppMagicLinkInvitationContract, BulkAppMagicLinkResultItemContract, BulkCreateAppMagicLinksRequestContract, BulkCreateAppMagicLinksResponseContract, CreateAppMagicLinkRequestContract, CreateAppMagicLinkResponseContract, RequestAppMagicLinkRequestContract, RequestAppMagicLinkResponseContract } from "./app-magic-link/app-magic-link";
10
+ export type { ActivateAppMagicLinkResponseContract, BulkAppMagicLinkInvitationContract, BulkAppMagicLinkResultItemContract, BulkCreateAppMagicLinksRequestContract, BulkCreateAppMagicLinksResponseContract, CreateAppClientInviteRequestContract, CreateAppMagicLinkRequestContract, CreateAppMagicLinkResponseContract, RequestAppMagicLinkRequestContract, RequestAppMagicLinkResponseContract } from "./app-magic-link/app-magic-link";
11
11
  export * from "./billing/billing";
12
12
  export type { OrgEmailSendRequestContract, OrgEmailSendResponseContract } from "./email/email";
13
13
  export * from "./file/file";
14
14
  export type { FusebaseAuthChallengeContract, FusebaseAuthChallengeRequestContract, FusebaseAuthChallengeResponseContract, FusebaseAuthConflictErrorBodyContract, FusebaseAuthLoginRequestContract, FusebaseAuthLoginResponseContract, FusebaseAuthLogoutResponseContract, FusebaseAuthPasswordResetRequestContract, FusebaseAuthPasswordResetResponseContract, FusebaseAuthPasswordRestoreKeyResponseContract, FusebaseAuthPasswordRestoreRequestContract, FusebaseAuthPasswordRestoreResponseContract, FusebaseAuthRegisterMemberRequestContract, FusebaseAuthRegisterMemberResponseContract, FusebaseAuthRegisterRequestContract, FusebaseAuthRegisterResponseContract, FusebaseAuthSessionContract } from "./fusebase-auth/fusebase-auth";
15
15
  export * from "./isolated-store/isolated-store";
16
16
  export * from "./mcp-manager/mcp-manager";
17
- export type { MeAuthContract, MeOrgGroupContract, MeResponseContract, MeScopeContract, MeUserContract } from "./me/me";
17
+ export type { MeAuthContract, MeOrgGroupContract, MePreferencesContract, MeResponseContract, MeScopeContract, MeUserContract } from "./me/me";
18
18
  export * from "./note/note";
19
19
  export * from "./org-group/org-group";
20
- export type { ClientAccountScheduledDeletionRequestContract, ClientAccountScheduledDeletionResponseContract, CreateWorkspaceRequestContract, OrgInviteContract, OrgMagicLinkContract, OrgMemberRemoveResponseContract, OrgPortalContract, OrgPortalListResponseContract, OrgUserAddRequestContract, OrgUserAddResponseContract, OrgUserContract, OrgUserIdInPathRequired, OrgUserListResponseContract, OrgUserWorkspaceIdInPathRequired, OrgWorkspaceContract, OrgWorkspaceInviteContract, OrgWorkspaceListResponseContract, OrgWorkspaceMemberContract, WorkspaceMemberRemoveResponseContract } from "./org-user/org-user";
20
+ export type { ClientAccountScheduledDeletionRequestContract, ClientAccountScheduledDeletionResponseContract, CreateWorkspaceRequestContract, OrgInviteContract, OrgMagicLinkContract, OrgMemberRemoveResponseContract, OrgPortalContract, OrgPortalListResponseContract, OrgUserAddRequestContract, OrgUserAddResponseContract, OrgUserContract, OrgUserIdInPathRequired, OrgUserListResponseContract, OrgUserWorkspaceIdInPathRequired, OrgWorkspaceContract, OrgWorkspaceInviteContract, OrgWorkspaceListResponseContract, OrgWorkspaceMemberContract, OrgWorkspaceMemberListResponseContract, WorkspaceMemberRemoveResponseContract } from "./org-user/org-user";
21
21
  export * from "./orgs/orgs";
22
22
  export type { VerifyPortalFeatureContextTokenRequestContract, VerifyPortalFeatureContextTokenResponseContract } from "./portal-feature-context/portal-feature-context";
23
23
  export type { AddPortalAppPageRequestContract, AddPortalAppPageResponseContract, AddPortalBlockRequestContract, AddPortalBlockResponseContract, AddPortalNoteBlockRequestContract, AddPortalNoteBlockResponseContract, BulkInviteResultItemContract, BulkInviteToPortalRequestContract, BulkInviteToPortalResponseContract, BulkPortalInvitationContract, CreatePortalFolderRequestContract, CreatePortalFolderResponseContract, CreatePortalPageWithNoteRequestContract, CreatePortalPageWithNoteResponseContract, CreatePortalRequestContract, CreatePortalResponseContract, DuplicatePortalItemRequestContract, DuplicatePortalItemResponseContract, DuplicatePortalRequestContract, InvitePortalManagerRequestContract, InvitePortalManagerResponseContract, InviteToPortalRequestContract, InviteToPortalResponseContract, ListPortalContentResponseContract, PortalContentItemContract, PortalDetailContract, PublishPortalDraftResponseContract, UpdatePortalAccessRequestContract, UpdatePortalAccessResponseContract, UpdatePortalCustomCodeRequestContract, UpdatePortalCustomCodeResponseContract, globalIdInPathRequired } from "./portals/portals";
24
24
  export * from "./shared/common";
25
25
  export * from "./shared/enums";
26
26
  export type { GetHealth200ResponseContract } from "./shared/health";
27
- export type { aliasInQueryOptional, aliasInQueryRequired, cacheStrategyInQueryOptional, copyDataInQueryRequired, copyRelationsInQueryRequired, copyTablesInQueryRequired, copyViewsInQueryRequired, createDefaultRowsInQuery, dashboardIdInPathRequired, databaseIdInQueryRequired, includeRows, limitInQueryOptional, mappingInQueryRequiredContract, nameInQueryOptional, orgIdInPathRequired, pageInQueryOptional, relationId, rootEntitiesInQueryOptional, rootEntityInQueryOptional, scopeIdInQueryRequired, scopeTypeInQueryRequired, scopeTypeOrgInQueryRequired, sectionKeyInQueryOptional, sectionKeyInQueryRequired, sectionTypeInQueryOptional, sectionTypeInQueryRequired, sourceDashboardIdInQueryRequired, sourceIndexInQueryRequired, targetDashboardIdInQueryRequired, templateIdInPathRequired, tokenSourceInQueryOptional, viewIdInPathRequired, viewIdInQueryOptional, viewIdInQueryRequired } from "./shared/parameters";
27
+ export type { aliasInQueryOptional, aliasInQueryRequired, cacheStrategyInQueryOptional, copyDataInQueryRequired, copyRelationsInQueryRequired, copyTablesInQueryRequired, copyViewsInQueryRequired, createDefaultRowsInQuery, dashboardIdInPathRequired, databaseIdInQueryRequired, includeExpiredInQueryOptional, includeRows, limitInQueryOptional, mappingInQueryRequiredContract, nameInQueryOptional, orgIdInPathRequired, pageInQueryOptional, relationId, rootEntitiesInQueryOptional, rootEntityInQueryOptional, scopeIdInQueryRequired, scopeTypeInQueryRequired, scopeTypeOrgInQueryRequired, sectionKeyInQueryOptional, sectionKeyInQueryRequired, sectionTypeInQueryOptional, sectionTypeInQueryRequired, sourceDashboardIdInQueryRequired, sourceIndexInQueryRequired, targetDashboardIdInQueryRequired, templateIdInPathRequired, tokenSourceInQueryOptional, viewIdInPathRequired, viewIdInQueryOptional, viewIdInQueryRequired } from "./shared/parameters";
28
28
  export * from "./system/system";
29
29
  export * from "./token/token";
@@ -9,6 +9,21 @@ export interface MeOrgGroupContract {
9
9
  export interface MeUserContract {
10
10
  id: number | null;
11
11
  }
12
+ export type MeTimeFormat = "12h" | "24h";
13
+ export interface MePreferencesContract {
14
+ /** IANA timezone name, e.g. "Europe/Moscow" or "America/New_York". */
15
+ timezone: string | null;
16
+ /** Current UTC offset for the timezone at request time, e.g. "+03:00". */
17
+ timezoneOffset: string | null;
18
+ /**
19
+ * Resolved clock preference derived from the user's `dateTimeLocale`.
20
+ * Defaults to `12h` when the locale is unset or unresolvable (matches the
21
+ * webnotes client's `en-US` default).
22
+ */
23
+ timeFormat: MeTimeFormat;
24
+ /** Raw locale used for date/time display, e.g. "en-US" (12h) or "en-GB" (24h). */
25
+ dateTimeLocale: string | null;
26
+ }
12
27
  export interface MeAuthContract {
13
28
  type: string;
14
29
  source: string | null;
@@ -23,4 +38,9 @@ export interface MeResponseContract {
23
38
  authenticated: true;
24
39
  user: MeUserContract;
25
40
  auth: MeAuthContract;
41
+ /**
42
+ * Locale/display preferences for the authenticated user. `null` when the
43
+ * auth context is not bound to a user (e.g. an app token without a user).
44
+ */
45
+ preferences: MePreferencesContract | null;
26
46
  }
@@ -113,6 +113,9 @@ export interface OrgWorkspaceMemberContract {
113
113
  privileges?: string[] | null;
114
114
  magicLink?: string | null;
115
115
  }
116
+ export interface OrgWorkspaceMemberListResponseContract {
117
+ members: OrgWorkspaceMemberContract[];
118
+ }
116
119
  export interface OrgMagicLinkContract {
117
120
  id: string;
118
121
  type: string;
@@ -3,6 +3,7 @@ import type { RootEntityContract, ScopeTypeContract, ScopeTypeOrgContract } from
3
3
  export type scopeTypeOrgInQueryRequired = ScopeTypeOrgContract;
4
4
  export type scopeIdInQueryRequired = string;
5
5
  export type tokenSourceInQueryOptional = "manual" | "app";
6
+ export type includeExpiredInQueryOptional = boolean;
6
7
  export type copyViewsInQueryRequired = boolean;
7
8
  export type copyDataInQueryRequired = boolean;
8
9
  export type copyRelationsInQueryRequired = boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fusebase/fusebase-gate-sdk",
3
- "version": "2.3.28-sdk.2",
3
+ "version": "2.3.28-sdk.6",
4
4
  "description": "TypeScript SDK for Fusebase Gate APIs - Generated from contract introspection",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -0,0 +1,9 @@
1
+ # Release Notes 2.3.28-sdk.6
2
+
3
+ - Current ref: `HEAD`
4
+ - Previous tag: `v2.3.28-sdk.6`
5
+ - Generated at: 2026-07-10T08:13:51.398Z
6
+
7
+ ## Included Drafts
8
+
9
+ - None
@@ -1,8 +1,8 @@
1
- # Release Notes 2.3.28-sdk.2
1
+ # Release Notes 2.3.28-sdk.6
2
2
 
3
3
  - Current ref: `HEAD`
4
- - Previous tag: `v2.3.28-sdk.2`
5
- - Generated at: 2026-07-08T14:24:51.573Z
4
+ - Previous tag: `v2.3.28-sdk.6`
5
+ - Generated at: 2026-07-10T08:13:51.398Z
6
6
 
7
7
  ## Included Drafts
8
8
 
@@ -1,9 +0,0 @@
1
- # Release Notes 2.3.28-sdk.2
2
-
3
- - Current ref: `HEAD`
4
- - Previous tag: `v2.3.28-sdk.2`
5
- - Generated at: 2026-07-08T14:24:51.573Z
6
-
7
- ## Included Drafts
8
-
9
- - None