@fusebase/fusebase-gate-sdk 2.3.32-sdk.1 → 2.3.34-sdk.0
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/apis/AppMagicLinksApi.d.ts +27 -1
- package/dist/apis/AppMagicLinksApi.js +29 -0
- package/dist/apis/NotesApi.d.ts +51 -1
- package/dist/apis/NotesApi.js +59 -0
- package/dist/types/app-magic-link/app-magic-link.d.ts +60 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/note/note.d.ts +62 -0
- package/package.json +1 -1
- package/release-notes/2.3.34-sdk.0.md +9 -0
- package/release-notes/latest.md +3 -3
- package/release-notes/2.3.32-sdk.1.md +0 -9
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Domain: app-magic-links
|
|
6
6
|
*/
|
|
7
7
|
import type { Client } from "../runtime/transport";
|
|
8
|
-
import type { ActivateAppMagicLinkResponseContract, BulkCreateAppMagicLinksRequestContract, BulkCreateAppMagicLinksResponseContract, CreateAppMagicLinkRequestContract, CreateAppMagicLinkResponseContract, orgIdInPathRequired, RequestAppMagicLinkRequestContract, RequestAppMagicLinkResponseContract } from "../types";
|
|
8
|
+
import type { ActivateAppMagicLinkResponseContract, BulkCreateAppMagicLinksRequestContract, BulkCreateAppMagicLinksResponseContract, CreateAppMagicLinkRequestContract, CreateAppMagicLinkResponseContract, ListAppMagicLinksResponseContract, orgIdInPathRequired, RequestAppMagicLinkRequestContract, RequestAppMagicLinkResponseContract, RevokeAppMagicLinkResponseContract } from "../types";
|
|
9
9
|
export declare class AppMagicLinksApi {
|
|
10
10
|
private client;
|
|
11
11
|
constructor(client: Client);
|
|
@@ -43,6 +43,20 @@ export declare class AppMagicLinksApi {
|
|
|
43
43
|
headers?: Record<string, string>;
|
|
44
44
|
body: CreateAppMagicLinkRequestContract;
|
|
45
45
|
}): Promise<CreateAppMagicLinkResponseContract>;
|
|
46
|
+
/**
|
|
47
|
+
* List app magic links (support/debug)
|
|
48
|
+
* Owner/admin support/debug flow. Lists the app's active (non-revoked) magic links, newest first, with an optional email filter. Never returns token material — only row metadata (email, mode, redirectPath, timestamps). Pair with revokeAppMagicLink to find and clear an orphaned invite. Requires app_magic_link.write and org access. appId is the Product id.
|
|
49
|
+
*/
|
|
50
|
+
listAppMagicLinks(params: {
|
|
51
|
+
path: {
|
|
52
|
+
orgId: orgIdInPathRequired;
|
|
53
|
+
appId: string;
|
|
54
|
+
};
|
|
55
|
+
query?: {
|
|
56
|
+
email?: string;
|
|
57
|
+
};
|
|
58
|
+
headers?: Record<string, string>;
|
|
59
|
+
}): Promise<ListAppMagicLinksResponseContract>;
|
|
46
60
|
/**
|
|
47
61
|
* Request an app magic link (visitor self-service flow)
|
|
48
62
|
* Unauthenticated visitor flow. The link is dispatched only when the email already has access to the app under its current accessPrincipals; otherwise the call is a no-op. Always returns 200 with `{ ok: true }` so the response cannot be used to enumerate emails or access. Apply per-IP rate limiting upstream of this call.
|
|
@@ -54,4 +68,16 @@ export declare class AppMagicLinksApi {
|
|
|
54
68
|
headers?: Record<string, string>;
|
|
55
69
|
body: RequestAppMagicLinkRequestContract;
|
|
56
70
|
}): Promise<RequestAppMagicLinkResponseContract>;
|
|
71
|
+
/**
|
|
72
|
+
* Revoke an app magic link
|
|
73
|
+
* Owner/admin revoke flow. Soft-deletes the magic link identified by globalId so it can no longer be activated (activation then returns 404) and the recipient email can be invited again — the fix for orphaned invites that block re-invites for 24h. Returns 404 when the link does not exist under the org/app on the path or is already revoked. Requires app_magic_link.write and org access. appId is the Product id.
|
|
74
|
+
*/
|
|
75
|
+
revokeAppMagicLink(params: {
|
|
76
|
+
path: {
|
|
77
|
+
orgId: orgIdInPathRequired;
|
|
78
|
+
appId: string;
|
|
79
|
+
globalId: string;
|
|
80
|
+
};
|
|
81
|
+
headers?: Record<string, string>;
|
|
82
|
+
}): Promise<RevokeAppMagicLinkResponseContract>;
|
|
57
83
|
}
|
|
@@ -55,6 +55,21 @@ class AppMagicLinksApi {
|
|
|
55
55
|
expectedContentType: "application/json",
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* List app magic links (support/debug)
|
|
60
|
+
* Owner/admin support/debug flow. Lists the app's active (non-revoked) magic links, newest first, with an optional email filter. Never returns token material — only row metadata (email, mode, redirectPath, timestamps). Pair with revokeAppMagicLink to find and clear an orphaned invite. Requires app_magic_link.write and org access. appId is the Product id.
|
|
61
|
+
*/
|
|
62
|
+
async listAppMagicLinks(params) {
|
|
63
|
+
return this.client.request({
|
|
64
|
+
method: "GET",
|
|
65
|
+
path: "/:orgId/apps/:appId/magic-links",
|
|
66
|
+
pathParams: params.path,
|
|
67
|
+
query: params.query,
|
|
68
|
+
headers: params.headers,
|
|
69
|
+
opId: "listAppMagicLinks",
|
|
70
|
+
expectedContentType: "application/json",
|
|
71
|
+
});
|
|
72
|
+
}
|
|
58
73
|
/**
|
|
59
74
|
* Request an app magic link (visitor self-service flow)
|
|
60
75
|
* Unauthenticated visitor flow. The link is dispatched only when the email already has access to the app under its current accessPrincipals; otherwise the call is a no-op. Always returns 200 with `{ ok: true }` so the response cannot be used to enumerate emails or access. Apply per-IP rate limiting upstream of this call.
|
|
@@ -70,5 +85,19 @@ class AppMagicLinksApi {
|
|
|
70
85
|
expectedContentType: "application/json",
|
|
71
86
|
});
|
|
72
87
|
}
|
|
88
|
+
/**
|
|
89
|
+
* Revoke an app magic link
|
|
90
|
+
* Owner/admin revoke flow. Soft-deletes the magic link identified by globalId so it can no longer be activated (activation then returns 404) and the recipient email can be invited again — the fix for orphaned invites that block re-invites for 24h. Returns 404 when the link does not exist under the org/app on the path or is already revoked. Requires app_magic_link.write and org access. appId is the Product id.
|
|
91
|
+
*/
|
|
92
|
+
async revokeAppMagicLink(params) {
|
|
93
|
+
return this.client.request({
|
|
94
|
+
method: "POST",
|
|
95
|
+
path: "/:orgId/apps/:appId/magic-links/:globalId/revoke",
|
|
96
|
+
pathParams: params.path,
|
|
97
|
+
headers: params.headers,
|
|
98
|
+
opId: "revokeAppMagicLink",
|
|
99
|
+
expectedContentType: "application/json",
|
|
100
|
+
});
|
|
101
|
+
}
|
|
73
102
|
}
|
|
74
103
|
exports.AppMagicLinksApi = AppMagicLinksApi;
|
package/dist/apis/NotesApi.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Domain: notes
|
|
6
6
|
*/
|
|
7
7
|
import type { Client } from "../runtime/transport";
|
|
8
|
-
import type { AddWorkspaceNoteAttachmentRequestContract, AddWorkspaceNoteAttachmentResponseContract, AppendWorkspaceNoteContentRequestContract, CreateWorkspaceNoteFolderRequestContract, CreateWorkspaceNoteFolderResponseContract, CreateWorkspaceNoteRequestContract, CreateWorkspaceNoteResponseContract, orgIdInPathRequired, WorkspaceIdInPathRequired, WorkspaceNoteContentResponseContract, WorkspaceNoteFolderListResponseContract, WorkspaceNoteIdInPathRequired, WorkspaceNoteListResponseContract, WorkspaceNoteParentIdInQueryOptional } from "../types";
|
|
8
|
+
import type { AddWorkspaceNoteAttachmentRequestContract, AddWorkspaceNoteAttachmentResponseContract, AppendWorkspaceMarkdownNoteContentRequestContract, AppendWorkspaceNoteContentRequestContract, CreateWorkspaceMarkdownNoteRequestContract, CreateWorkspaceNoteFolderRequestContract, CreateWorkspaceNoteFolderResponseContract, CreateWorkspaceNoteRequestContract, CreateWorkspaceNoteResponseContract, orgIdInPathRequired, UpdateWorkspaceMarkdownNoteContentRequestContract, WorkspaceIdInPathRequired, WorkspaceMarkdownNoteResponseContract, WorkspaceNoteContentResponseContract, WorkspaceNoteFolderListResponseContract, WorkspaceNoteIdInPathRequired, WorkspaceNoteListResponseContract, WorkspaceNoteParentIdInQueryOptional } from "../types";
|
|
9
9
|
export declare class NotesApi {
|
|
10
10
|
private client;
|
|
11
11
|
constructor(client: Client);
|
|
@@ -22,6 +22,19 @@ export declare class NotesApi {
|
|
|
22
22
|
headers?: Record<string, string>;
|
|
23
23
|
body: AddWorkspaceNoteAttachmentRequestContract;
|
|
24
24
|
}): Promise<AddWorkspaceNoteAttachmentResponseContract>;
|
|
25
|
+
/**
|
|
26
|
+
* Append to workspace markdown note content
|
|
27
|
+
* Appends markdown to the end of a v3 markdown note without replacing existing content. `revision` is an optional optimistic lock: when provided and stale, note-service rejects the write with HTTP 409. Returns the full markdown after the append and the new `revision`.
|
|
28
|
+
*/
|
|
29
|
+
appendWorkspaceMarkdownNoteContent(params: {
|
|
30
|
+
path: {
|
|
31
|
+
orgId: orgIdInPathRequired;
|
|
32
|
+
workspaceId: WorkspaceIdInPathRequired;
|
|
33
|
+
noteId: WorkspaceNoteIdInPathRequired;
|
|
34
|
+
};
|
|
35
|
+
headers?: Record<string, string>;
|
|
36
|
+
body: AppendWorkspaceMarkdownNoteContentRequestContract;
|
|
37
|
+
}): Promise<WorkspaceMarkdownNoteResponseContract>;
|
|
25
38
|
/**
|
|
26
39
|
* Append content to workspace note
|
|
27
40
|
* Appends text or html to the end of an existing workspace note without replacing current content, then returns the refreshed note md. Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace before calling note-service and editor-server. For markdown sources, apps should render markdown to html before calling this operation when formatting fidelity matters; otherwise send markdown-like text as `format: text`.
|
|
@@ -35,6 +48,18 @@ export declare class NotesApi {
|
|
|
35
48
|
headers?: Record<string, string>;
|
|
36
49
|
body: AppendWorkspaceNoteContentRequestContract;
|
|
37
50
|
}): Promise<WorkspaceNoteContentResponseContract>;
|
|
51
|
+
/**
|
|
52
|
+
* Create workspace markdown note
|
|
53
|
+
* Creates a v3 note whose source of truth is markdown stored in note-service (no editor-service involved). Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace. When parentId is omitted, gate uses `default`. Returns the stored markdown and the initial `revision` to use for later writes.
|
|
54
|
+
*/
|
|
55
|
+
createWorkspaceMarkdownNote(params: {
|
|
56
|
+
path: {
|
|
57
|
+
orgId: orgIdInPathRequired;
|
|
58
|
+
workspaceId: WorkspaceIdInPathRequired;
|
|
59
|
+
};
|
|
60
|
+
headers?: Record<string, string>;
|
|
61
|
+
body: CreateWorkspaceMarkdownNoteRequestContract;
|
|
62
|
+
}): Promise<WorkspaceMarkdownNoteResponseContract>;
|
|
38
63
|
/**
|
|
39
64
|
* Create workspace note
|
|
40
65
|
* Creates a note in the requested workspace. Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace before calling note-service and editor-server. When parentId is omitted, gate uses `default`. Optional initial text or html can be appended after creation.
|
|
@@ -59,6 +84,18 @@ export declare class NotesApi {
|
|
|
59
84
|
headers?: Record<string, string>;
|
|
60
85
|
body: CreateWorkspaceNoteFolderRequestContract;
|
|
61
86
|
}): Promise<CreateWorkspaceNoteFolderResponseContract>;
|
|
87
|
+
/**
|
|
88
|
+
* Read workspace markdown note
|
|
89
|
+
* Returns the markdown source of truth and current `revision` of a v3 markdown note straight from note-service. Only works for notes created as markdown (v3) notes; v2 notes are served by getWorkspaceNote. Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace.
|
|
90
|
+
*/
|
|
91
|
+
getWorkspaceMarkdownNote(params: {
|
|
92
|
+
path: {
|
|
93
|
+
orgId: orgIdInPathRequired;
|
|
94
|
+
workspaceId: WorkspaceIdInPathRequired;
|
|
95
|
+
noteId: WorkspaceNoteIdInPathRequired;
|
|
96
|
+
};
|
|
97
|
+
headers?: Record<string, string>;
|
|
98
|
+
}): Promise<WorkspaceMarkdownNoteResponseContract>;
|
|
62
99
|
/**
|
|
63
100
|
* Read workspace note
|
|
64
101
|
* Returns the note title, parent metadata, and md content for the requested workspace note. Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace before calling note-service and editor-server.
|
|
@@ -96,4 +133,17 @@ export declare class NotesApi {
|
|
|
96
133
|
};
|
|
97
134
|
headers?: Record<string, string>;
|
|
98
135
|
}): Promise<WorkspaceNoteListResponseContract>;
|
|
136
|
+
/**
|
|
137
|
+
* Replace workspace markdown note content
|
|
138
|
+
* Replaces the whole markdown document of a v3 markdown note. Requires the `revision` from the last read as an optimistic lock; a stale revision returns HTTP 409 with the current revision. Returns the stored markdown and the new `revision`.
|
|
139
|
+
*/
|
|
140
|
+
updateWorkspaceMarkdownNoteContent(params: {
|
|
141
|
+
path: {
|
|
142
|
+
orgId: orgIdInPathRequired;
|
|
143
|
+
workspaceId: WorkspaceIdInPathRequired;
|
|
144
|
+
noteId: WorkspaceNoteIdInPathRequired;
|
|
145
|
+
};
|
|
146
|
+
headers?: Record<string, string>;
|
|
147
|
+
body: UpdateWorkspaceMarkdownNoteContentRequestContract;
|
|
148
|
+
}): Promise<WorkspaceMarkdownNoteResponseContract>;
|
|
99
149
|
}
|
package/dist/apis/NotesApi.js
CHANGED
|
@@ -26,6 +26,21 @@ class NotesApi {
|
|
|
26
26
|
expectedContentType: "application/json",
|
|
27
27
|
});
|
|
28
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Append to workspace markdown note content
|
|
31
|
+
* Appends markdown to the end of a v3 markdown note without replacing existing content. `revision` is an optional optimistic lock: when provided and stale, note-service rejects the write with HTTP 409. Returns the full markdown after the append and the new `revision`.
|
|
32
|
+
*/
|
|
33
|
+
async appendWorkspaceMarkdownNoteContent(params) {
|
|
34
|
+
return this.client.request({
|
|
35
|
+
method: "POST",
|
|
36
|
+
path: "/:orgId/workspaces/:workspaceId/markdown-notes/:noteId/content/append",
|
|
37
|
+
pathParams: params.path,
|
|
38
|
+
headers: params.headers,
|
|
39
|
+
body: params.body,
|
|
40
|
+
opId: "appendWorkspaceMarkdownNoteContent",
|
|
41
|
+
expectedContentType: "application/json",
|
|
42
|
+
});
|
|
43
|
+
}
|
|
29
44
|
/**
|
|
30
45
|
* Append content to workspace note
|
|
31
46
|
* Appends text or html to the end of an existing workspace note without replacing current content, then returns the refreshed note md. Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace before calling note-service and editor-server. For markdown sources, apps should render markdown to html before calling this operation when formatting fidelity matters; otherwise send markdown-like text as `format: text`.
|
|
@@ -41,6 +56,21 @@ class NotesApi {
|
|
|
41
56
|
expectedContentType: "application/json",
|
|
42
57
|
});
|
|
43
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Create workspace markdown note
|
|
61
|
+
* Creates a v3 note whose source of truth is markdown stored in note-service (no editor-service involved). Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace. When parentId is omitted, gate uses `default`. Returns the stored markdown and the initial `revision` to use for later writes.
|
|
62
|
+
*/
|
|
63
|
+
async createWorkspaceMarkdownNote(params) {
|
|
64
|
+
return this.client.request({
|
|
65
|
+
method: "POST",
|
|
66
|
+
path: "/:orgId/workspaces/:workspaceId/markdown-notes",
|
|
67
|
+
pathParams: params.path,
|
|
68
|
+
headers: params.headers,
|
|
69
|
+
body: params.body,
|
|
70
|
+
opId: "createWorkspaceMarkdownNote",
|
|
71
|
+
expectedContentType: "application/json",
|
|
72
|
+
});
|
|
73
|
+
}
|
|
44
74
|
/**
|
|
45
75
|
* Create workspace note
|
|
46
76
|
* Creates a note in the requested workspace. Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace before calling note-service and editor-server. When parentId is omitted, gate uses `default`. Optional initial text or html can be appended after creation.
|
|
@@ -71,6 +101,20 @@ class NotesApi {
|
|
|
71
101
|
expectedContentType: "application/json",
|
|
72
102
|
});
|
|
73
103
|
}
|
|
104
|
+
/**
|
|
105
|
+
* Read workspace markdown note
|
|
106
|
+
* Returns the markdown source of truth and current `revision` of a v3 markdown note straight from note-service. Only works for notes created as markdown (v3) notes; v2 notes are served by getWorkspaceNote. Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace.
|
|
107
|
+
*/
|
|
108
|
+
async getWorkspaceMarkdownNote(params) {
|
|
109
|
+
return this.client.request({
|
|
110
|
+
method: "GET",
|
|
111
|
+
path: "/:orgId/workspaces/:workspaceId/markdown-notes/:noteId",
|
|
112
|
+
pathParams: params.path,
|
|
113
|
+
headers: params.headers,
|
|
114
|
+
opId: "getWorkspaceMarkdownNote",
|
|
115
|
+
expectedContentType: "application/json",
|
|
116
|
+
});
|
|
117
|
+
}
|
|
74
118
|
/**
|
|
75
119
|
* Read workspace note
|
|
76
120
|
* Returns the note title, parent metadata, and md content for the requested workspace note. Prefer a real workspace id; when the path workspaceId is `default`, gate resolves it to the organization's default workspace before calling note-service and editor-server.
|
|
@@ -114,5 +158,20 @@ class NotesApi {
|
|
|
114
158
|
expectedContentType: "application/json",
|
|
115
159
|
});
|
|
116
160
|
}
|
|
161
|
+
/**
|
|
162
|
+
* Replace workspace markdown note content
|
|
163
|
+
* Replaces the whole markdown document of a v3 markdown note. Requires the `revision` from the last read as an optimistic lock; a stale revision returns HTTP 409 with the current revision. Returns the stored markdown and the new `revision`.
|
|
164
|
+
*/
|
|
165
|
+
async updateWorkspaceMarkdownNoteContent(params) {
|
|
166
|
+
return this.client.request({
|
|
167
|
+
method: "PUT",
|
|
168
|
+
path: "/:orgId/workspaces/:workspaceId/markdown-notes/:noteId/content",
|
|
169
|
+
pathParams: params.path,
|
|
170
|
+
headers: params.headers,
|
|
171
|
+
body: params.body,
|
|
172
|
+
opId: "updateWorkspaceMarkdownNoteContent",
|
|
173
|
+
expectedContentType: "application/json",
|
|
174
|
+
});
|
|
175
|
+
}
|
|
117
176
|
}
|
|
118
177
|
exports.NotesApi = NotesApi;
|
|
@@ -122,6 +122,66 @@ export interface ActivateAppMagicLinkResponseContract {
|
|
|
122
122
|
*/
|
|
123
123
|
appFeatureId: string;
|
|
124
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* Response body for revokeAppMagicLink.
|
|
127
|
+
*/
|
|
128
|
+
export interface RevokeAppMagicLinkResponseContract {
|
|
129
|
+
/** Always true on success. */
|
|
130
|
+
ok: boolean;
|
|
131
|
+
/** globalId of the revoked magic link. */
|
|
132
|
+
id: string;
|
|
133
|
+
/**
|
|
134
|
+
* Unix timestamp (seconds) when the link was revoked (its deletedAt value).
|
|
135
|
+
*/
|
|
136
|
+
revokedAt: number;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* A single app magic-link row in the support/debug listing. Never carries token
|
|
140
|
+
* material — only metadata safe for an owner/support view.
|
|
141
|
+
*/
|
|
142
|
+
export interface AppMagicLinkSummaryContract {
|
|
143
|
+
/** globalId of the magic link row. */
|
|
144
|
+
id: string;
|
|
145
|
+
/**
|
|
146
|
+
* Recipient email the link was issued to.
|
|
147
|
+
* @nullable true
|
|
148
|
+
*/
|
|
149
|
+
email?: string | null;
|
|
150
|
+
/** How the link was created: `invite` (owner/admin) or `self_service`. */
|
|
151
|
+
mode: string;
|
|
152
|
+
/**
|
|
153
|
+
* Relative app path the recipient lands on after activation, or null for root.
|
|
154
|
+
* @nullable true
|
|
155
|
+
*/
|
|
156
|
+
redirectPath?: string | null;
|
|
157
|
+
/**
|
|
158
|
+
* Child app (feature) globalId the link is scoped to; null for legacy rows.
|
|
159
|
+
* @nullable true
|
|
160
|
+
*/
|
|
161
|
+
appFeatureId?: string | null;
|
|
162
|
+
/**
|
|
163
|
+
* User id of the owner/admin who created the invite; null for self-service.
|
|
164
|
+
* @nullable true
|
|
165
|
+
*/
|
|
166
|
+
createdByUserId?: number | null;
|
|
167
|
+
/** Unix timestamp (seconds) when the link expires. */
|
|
168
|
+
expiresAt: number;
|
|
169
|
+
/**
|
|
170
|
+
* Unix timestamp (seconds) of the most recent activation, or null if never
|
|
171
|
+
* activated.
|
|
172
|
+
* @nullable true
|
|
173
|
+
*/
|
|
174
|
+
usedAt?: number | null;
|
|
175
|
+
/** Unix timestamp (seconds) when the link was created. */
|
|
176
|
+
createdAt: number;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Response body for listAppMagicLinks (support/debug).
|
|
180
|
+
*/
|
|
181
|
+
export interface ListAppMagicLinksResponseContract {
|
|
182
|
+
/** Active (non-revoked) magic links for the product, newest first. */
|
|
183
|
+
links: AppMagicLinkSummaryContract[];
|
|
184
|
+
}
|
|
125
185
|
/** A single invitee in a bulk app magic-link request. */
|
|
126
186
|
export interface BulkAppMagicLinkInvitationContract {
|
|
127
187
|
/**
|
package/dist/types/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
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, CreateAppClientInviteRequestContract, CreateAppMagicLinkRequestContract, CreateAppMagicLinkResponseContract, RequestAppMagicLinkRequestContract, RequestAppMagicLinkResponseContract } from "./app-magic-link/app-magic-link";
|
|
10
|
+
export type { ActivateAppMagicLinkResponseContract, AppMagicLinkSummaryContract, BulkAppMagicLinkInvitationContract, BulkAppMagicLinkResultItemContract, BulkCreateAppMagicLinksRequestContract, BulkCreateAppMagicLinksResponseContract, CreateAppClientInviteRequestContract, CreateAppMagicLinkRequestContract, CreateAppMagicLinkResponseContract, ListAppMagicLinksResponseContract, RequestAppMagicLinkRequestContract, RequestAppMagicLinkResponseContract, RevokeAppMagicLinkResponseContract } 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";
|
|
@@ -63,6 +63,68 @@ export interface AppendWorkspaceNoteContentRequestContract {
|
|
|
63
63
|
*/
|
|
64
64
|
format?: WorkspaceNoteContentFormatContract | null;
|
|
65
65
|
}
|
|
66
|
+
export interface WorkspaceMarkdownNoteContract extends WorkspaceNoteSummaryContract {
|
|
67
|
+
/**
|
|
68
|
+
* Markdown source of truth of the v3 note.
|
|
69
|
+
*/
|
|
70
|
+
markdown: string;
|
|
71
|
+
/**
|
|
72
|
+
* Optimistic-concurrency revision. Increments on every markdown write; send
|
|
73
|
+
* it back with update/append calls to detect conflicting writers.
|
|
74
|
+
*/
|
|
75
|
+
revision: number;
|
|
76
|
+
}
|
|
77
|
+
export interface WorkspaceMarkdownNoteResponseContract {
|
|
78
|
+
note: WorkspaceMarkdownNoteContract;
|
|
79
|
+
}
|
|
80
|
+
export interface CreateWorkspaceMarkdownNoteRequestContract {
|
|
81
|
+
title: string;
|
|
82
|
+
/**
|
|
83
|
+
* Parent folder global id. Defaults to `default`.
|
|
84
|
+
*/
|
|
85
|
+
parentId?: string | null;
|
|
86
|
+
/**
|
|
87
|
+
* Optional initial markdown content. Defaults to an empty document.
|
|
88
|
+
*/
|
|
89
|
+
markdown?: string | null;
|
|
90
|
+
}
|
|
91
|
+
export interface UpdateWorkspaceMarkdownNoteContentRequestContract {
|
|
92
|
+
/**
|
|
93
|
+
* Full markdown document that replaces the current note content.
|
|
94
|
+
*/
|
|
95
|
+
markdown: string;
|
|
96
|
+
/**
|
|
97
|
+
* Revision returned by the last read. The write is rejected with HTTP 409
|
|
98
|
+
* (`data.errorCode` = markdown_note_revision_conflict) when it is stale.
|
|
99
|
+
*/
|
|
100
|
+
revision: number;
|
|
101
|
+
}
|
|
102
|
+
export interface AppendWorkspaceMarkdownNoteContentRequestContract {
|
|
103
|
+
/**
|
|
104
|
+
* Markdown appended to the end of the existing note content.
|
|
105
|
+
*/
|
|
106
|
+
markdown: string;
|
|
107
|
+
/**
|
|
108
|
+
* Optional optimistic lock. When provided and stale, the write is rejected
|
|
109
|
+
* with HTTP 409 (`data.errorCode` = markdown_note_revision_conflict).
|
|
110
|
+
* Omit it to append unconditionally.
|
|
111
|
+
*/
|
|
112
|
+
revision?: number | null;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Body returned with HTTP 409 when a markdown write carries a stale revision.
|
|
116
|
+
* `data.currentRevision` is the revision currently stored by note-service;
|
|
117
|
+
* re-read the note (or reuse this value) and retry the write.
|
|
118
|
+
*/
|
|
119
|
+
export interface WorkspaceMarkdownNoteRevisionConflictErrorBodyContract {
|
|
120
|
+
success: false;
|
|
121
|
+
message: string;
|
|
122
|
+
data: {
|
|
123
|
+
code: string;
|
|
124
|
+
errorCode: "markdown_note_revision_conflict";
|
|
125
|
+
currentRevision: number;
|
|
126
|
+
};
|
|
127
|
+
}
|
|
66
128
|
export interface AddWorkspaceNoteAttachmentRequestContract {
|
|
67
129
|
/**
|
|
68
130
|
* Stored-file UUID returned by completeMultipartFileUpload.
|
package/package.json
CHANGED
package/release-notes/latest.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# Release Notes 2.3.
|
|
1
|
+
# Release Notes 2.3.34-sdk.0
|
|
2
2
|
|
|
3
3
|
- Current ref: `HEAD`
|
|
4
|
-
- Previous tag: `v2.3.
|
|
5
|
-
- Generated at: 2026-07-
|
|
4
|
+
- Previous tag: `v2.3.34-sdk.0`
|
|
5
|
+
- Generated at: 2026-07-20T11:13:33.778Z
|
|
6
6
|
|
|
7
7
|
## Included Drafts
|
|
8
8
|
|