quickbase-js 2.0.0 → 2.2.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/README.md +804 -59
- package/bin/quickbase-js.js +54 -0
- package/dist/auth/index.d.ts +1 -0
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +9 -0
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/ticket.d.ts +84 -0
- package/dist/auth/ticket.d.ts.map +1 -0
- package/dist/auth/ticket.js +260 -0
- package/dist/auth/ticket.js.map +1 -0
- package/dist/cli/schema.d.ts +23 -0
- package/dist/cli/schema.d.ts.map +1 -0
- package/dist/cli/schema.js +425 -0
- package/dist/cli/schema.js.map +1 -0
- package/dist/client/request.d.ts +2 -1
- package/dist/client/request.d.ts.map +1 -1
- package/dist/client/request.js +165 -18
- package/dist/client/request.js.map +1 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +12 -0
- package/dist/core/config.js.map +1 -1
- package/dist/core/errors.d.ts +17 -0
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +32 -0
- package/dist/core/errors.js.map +1 -1
- package/dist/core/index.d.ts +3 -2
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/schema.d.ts +37 -0
- package/dist/core/schema.d.ts.map +1 -0
- package/dist/core/schema.js +168 -0
- package/dist/core/schema.js.map +1 -0
- package/dist/core/transform.d.ts +36 -0
- package/dist/core/transform.d.ts.map +1 -0
- package/dist/core/transform.js +205 -0
- package/dist/core/transform.js.map +1 -0
- package/dist/core/types.d.ts +104 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/index.d.ts +14 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -2
- package/dist/index.js.map +1 -1
- package/dist/quickbase.esm.js +6 -2
- package/dist/quickbase.esm.js.map +4 -4
- package/dist/quickbase.min.js +6 -2
- package/dist/quickbase.min.js.map +4 -4
- package/dist/xml/codepages.d.ts +60 -0
- package/dist/xml/codepages.d.ts.map +1 -0
- package/dist/xml/codepages.js +88 -0
- package/dist/xml/codepages.js.map +1 -0
- package/dist/xml/dbvars.d.ts +39 -0
- package/dist/xml/dbvars.d.ts.map +1 -0
- package/dist/xml/dbvars.js +54 -0
- package/dist/xml/dbvars.js.map +1 -0
- package/dist/xml/errors.d.ts +64 -0
- package/dist/xml/errors.d.ts.map +1 -0
- package/dist/xml/errors.js +102 -0
- package/dist/xml/errors.js.map +1 -0
- package/dist/xml/fields.d.ts +45 -0
- package/dist/xml/fields.d.ts.map +1 -0
- package/dist/xml/fields.js +86 -0
- package/dist/xml/fields.js.map +1 -0
- package/dist/xml/groups.d.ts +196 -0
- package/dist/xml/groups.d.ts.map +1 -0
- package/dist/xml/groups.js +424 -0
- package/dist/xml/groups.js.map +1 -0
- package/dist/xml/html.d.ts +61 -0
- package/dist/xml/html.d.ts.map +1 -0
- package/dist/xml/html.js +110 -0
- package/dist/xml/html.js.map +1 -0
- package/dist/xml/index.d.ts +453 -0
- package/dist/xml/index.d.ts.map +1 -0
- package/dist/xml/index.js +741 -0
- package/dist/xml/index.js.map +1 -0
- package/dist/xml/metadata.d.ts +49 -0
- package/dist/xml/metadata.d.ts.map +1 -0
- package/dist/xml/metadata.js +84 -0
- package/dist/xml/metadata.js.map +1 -0
- package/dist/xml/records.d.ts +106 -0
- package/dist/xml/records.d.ts.map +1 -0
- package/dist/xml/records.js +220 -0
- package/dist/xml/records.js.map +1 -0
- package/dist/xml/request.d.ts +115 -0
- package/dist/xml/request.d.ts.map +1 -0
- package/dist/xml/request.js +167 -0
- package/dist/xml/request.js.map +1 -0
- package/dist/xml/roles.d.ts +117 -0
- package/dist/xml/roles.d.ts.map +1 -0
- package/dist/xml/roles.js +241 -0
- package/dist/xml/roles.js.map +1 -0
- package/dist/xml/schema.d.ts +94 -0
- package/dist/xml/schema.d.ts.map +1 -0
- package/dist/xml/schema.js +354 -0
- package/dist/xml/schema.js.map +1 -0
- package/dist/xml/transform.d.ts +154 -0
- package/dist/xml/transform.d.ts.map +1 -0
- package/dist/xml/transform.js +182 -0
- package/dist/xml/transform.js.map +1 -0
- package/dist/xml/types.d.ts +531 -0
- package/dist/xml/types.d.ts.map +1 -0
- package/dist/xml/types.js +22 -0
- package/dist/xml/types.js.map +1 -0
- package/dist/xml/users.d.ts +92 -0
- package/dist/xml/users.d.ts.map +1 -0
- package/dist/xml/users.js +166 -0
- package/dist/xml/users.js.map +1 -0
- package/dist/xml/webhooks.d.ts +98 -0
- package/dist/xml/webhooks.d.ts.map +1 -0
- package/dist/xml/webhooks.js +202 -0
- package/dist/xml/webhooks.js.map +1 -0
- package/package.json +6 -2
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* XML API HTML Generation
|
|
3
|
+
*
|
|
4
|
+
* Endpoints for generating HTML forms and tables.
|
|
5
|
+
*
|
|
6
|
+
* XML-API: Remove this file when QuickBase discontinues the XML API.
|
|
7
|
+
* To find all XML API code, search for: XML-API
|
|
8
|
+
*/
|
|
9
|
+
import type { XmlCaller } from './types.js';
|
|
10
|
+
/**
|
|
11
|
+
* Generate HTML form for adding a record.
|
|
12
|
+
*
|
|
13
|
+
* @see https://help.quickbase.com/docs/api-genaddrecordform
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const html = await genAddRecordForm(caller, 'bqtable123');
|
|
18
|
+
* // Use the HTML form in your UI
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare function genAddRecordForm(caller: XmlCaller, tableId: string, fields?: Array<{
|
|
22
|
+
id: number;
|
|
23
|
+
value: string;
|
|
24
|
+
}>): Promise<string>;
|
|
25
|
+
/**
|
|
26
|
+
* Generate HTML/JS/CSV table of query results.
|
|
27
|
+
*
|
|
28
|
+
* @see https://help.quickbase.com/docs/api-genresultstable
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* const html = await genResultsTable(caller, 'bqtable123', {
|
|
33
|
+
* query: "{'7'.CT.'test'}",
|
|
34
|
+
* clist: [6, 7, 8],
|
|
35
|
+
* });
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export declare function genResultsTable(caller: XmlCaller, tableId: string, options?: {
|
|
39
|
+
query?: string;
|
|
40
|
+
clist?: number[];
|
|
41
|
+
slist?: number[];
|
|
42
|
+
options?: string;
|
|
43
|
+
format?: 'structured' | 'csv';
|
|
44
|
+
}): Promise<string>;
|
|
45
|
+
/**
|
|
46
|
+
* Get a record rendered as HTML.
|
|
47
|
+
*
|
|
48
|
+
* @see https://help.quickbase.com/docs/api-getrecordashtml
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```typescript
|
|
52
|
+
* const html = await getRecordAsHTML(caller, 'bqtable123', { rid: 42 });
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare function getRecordAsHTML(caller: XmlCaller, tableId: string, options: {
|
|
56
|
+
rid?: number;
|
|
57
|
+
key?: string;
|
|
58
|
+
jht?: boolean;
|
|
59
|
+
dfid?: number;
|
|
60
|
+
}): Promise<string>;
|
|
61
|
+
//# sourceMappingURL=html.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/xml/html.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAQ5C;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,GAC5C,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC;CAC/B,GACA,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACA,OAAO,CAAC,MAAM,CAAC,CA0BjB"}
|
package/dist/xml/html.js
ADDED
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* XML API HTML Generation
|
|
3
|
+
*
|
|
4
|
+
* Endpoints for generating HTML forms and tables.
|
|
5
|
+
*
|
|
6
|
+
* XML-API: Remove this file when QuickBase discontinues the XML API.
|
|
7
|
+
* To find all XML API code, search for: XML-API
|
|
8
|
+
*/
|
|
9
|
+
import { checkError } from './errors.js';
|
|
10
|
+
import { buildRequest, escapeXml, parseBaseResponse, } from './request.js';
|
|
11
|
+
/**
|
|
12
|
+
* Generate HTML form for adding a record.
|
|
13
|
+
*
|
|
14
|
+
* @see https://help.quickbase.com/docs/api-genaddrecordform
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* const html = await genAddRecordForm(caller, 'bqtable123');
|
|
19
|
+
* // Use the HTML form in your UI
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export async function genAddRecordForm(caller, tableId, fields) {
|
|
23
|
+
let inner = '';
|
|
24
|
+
if (fields) {
|
|
25
|
+
for (const field of fields) {
|
|
26
|
+
inner += `<field fid="${field.id}">${escapeXml(field.value)}</field>`;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const body = buildRequest(inner);
|
|
30
|
+
const xml = await caller.doXml(tableId, 'API_GenAddRecordForm', body);
|
|
31
|
+
// Check for errors - the response may or may not be XML
|
|
32
|
+
if (xml.includes('<errcode>') && !xml.includes('<errcode>0</errcode>')) {
|
|
33
|
+
const base = parseBaseResponse(xml);
|
|
34
|
+
checkError(base);
|
|
35
|
+
}
|
|
36
|
+
return xml;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Generate HTML/JS/CSV table of query results.
|
|
40
|
+
*
|
|
41
|
+
* @see https://help.quickbase.com/docs/api-genresultstable
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```typescript
|
|
45
|
+
* const html = await genResultsTable(caller, 'bqtable123', {
|
|
46
|
+
* query: "{'7'.CT.'test'}",
|
|
47
|
+
* clist: [6, 7, 8],
|
|
48
|
+
* });
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
export async function genResultsTable(caller, tableId, options) {
|
|
52
|
+
let inner = '';
|
|
53
|
+
if (options?.query) {
|
|
54
|
+
inner += `<query>${escapeXml(options.query)}</query>`;
|
|
55
|
+
}
|
|
56
|
+
if (options?.clist && options.clist.length > 0) {
|
|
57
|
+
inner += `<clist>${options.clist.join('.')}</clist>`;
|
|
58
|
+
}
|
|
59
|
+
if (options?.slist && options.slist.length > 0) {
|
|
60
|
+
inner += `<slist>${options.slist.join('.')}</slist>`;
|
|
61
|
+
}
|
|
62
|
+
if (options?.options) {
|
|
63
|
+
inner += `<options>${escapeXml(options.options)}</options>`;
|
|
64
|
+
}
|
|
65
|
+
if (options?.format) {
|
|
66
|
+
inner += `<fmt>${options.format}</fmt>`;
|
|
67
|
+
}
|
|
68
|
+
const body = buildRequest(inner);
|
|
69
|
+
const xml = await caller.doXml(tableId, 'API_GenResultsTable', body);
|
|
70
|
+
// Check for errors
|
|
71
|
+
if (xml.includes('<errcode>') && !xml.includes('<errcode>0</errcode>')) {
|
|
72
|
+
const base = parseBaseResponse(xml);
|
|
73
|
+
checkError(base);
|
|
74
|
+
}
|
|
75
|
+
return xml;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Get a record rendered as HTML.
|
|
79
|
+
*
|
|
80
|
+
* @see https://help.quickbase.com/docs/api-getrecordashtml
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```typescript
|
|
84
|
+
* const html = await getRecordAsHTML(caller, 'bqtable123', { rid: 42 });
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
export async function getRecordAsHTML(caller, tableId, options) {
|
|
88
|
+
let inner = '';
|
|
89
|
+
if (options.rid !== undefined) {
|
|
90
|
+
inner += `<rid>${options.rid}</rid>`;
|
|
91
|
+
}
|
|
92
|
+
if (options.key) {
|
|
93
|
+
inner += `<key>${escapeXml(options.key)}</key>`;
|
|
94
|
+
}
|
|
95
|
+
if (options.jht) {
|
|
96
|
+
inner += '<jht>1</jht>';
|
|
97
|
+
}
|
|
98
|
+
if (options.dfid !== undefined) {
|
|
99
|
+
inner += `<dfid>${options.dfid}</dfid>`;
|
|
100
|
+
}
|
|
101
|
+
const body = buildRequest(inner);
|
|
102
|
+
const xml = await caller.doXml(tableId, 'API_GetRecordAsHTML', body);
|
|
103
|
+
// Check for errors
|
|
104
|
+
if (xml.includes('<errcode>') && !xml.includes('<errcode>0</errcode>')) {
|
|
105
|
+
const base = parseBaseResponse(xml);
|
|
106
|
+
checkError(base);
|
|
107
|
+
}
|
|
108
|
+
return xml;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=html.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/xml/html.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,453 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* XML API Client Module
|
|
3
|
+
*
|
|
4
|
+
* Provides access to legacy QuickBase XML API endpoints that have no
|
|
5
|
+
* JSON API equivalent (roles, groups, DBVars, code pages, etc.).
|
|
6
|
+
*
|
|
7
|
+
* XML-API: Remove this file when QuickBase discontinues the XML API.
|
|
8
|
+
* To find all XML API code, search for: XML-API
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import { createClient } from 'quickbase-js';
|
|
13
|
+
* import { createXmlClient } from 'quickbase-js/xml';
|
|
14
|
+
*
|
|
15
|
+
* const qb = createClient({
|
|
16
|
+
* realm: 'myrealm',
|
|
17
|
+
* auth: { type: 'user-token', userToken: '...' },
|
|
18
|
+
* });
|
|
19
|
+
*
|
|
20
|
+
* const xml = createXmlClient(qb);
|
|
21
|
+
*
|
|
22
|
+
* // Get all roles in an app
|
|
23
|
+
* const roles = await xml.getRoleInfo('bqxyz123');
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export * from './types.js';
|
|
27
|
+
export { XmlError, XmlErrorCode, isUnauthorized, isNotFound, isInvalidTicket, isInvalidInput } from './errors.js';
|
|
28
|
+
import type { ResolvedSchema } from '../core/types.js';
|
|
29
|
+
import { type GetRecordInfoResultWithAlias, type GetSchemaResultWithAlias, type FieldAddChoicesResultWithAlias, type FieldRemoveChoicesResultWithAlias, type GrantedDBsResultWithAlias, type GrantedDBsForGroupResultWithAlias, type GetAppDTMInfoResultWithAlias, type FindDBByNameResultWithAlias } from './transform.js';
|
|
30
|
+
export type { RecordFieldWithAlias, SchemaFieldWithAlias, DatabaseInfoWithAlias, SchemaChildTableWithAlias, GetRecordInfoResultWithAlias, GetSchemaResultWithAlias, FieldAddChoicesResultWithAlias, FieldRemoveChoicesResultWithAlias, GrantedDBsResultWithAlias, GrantedDBsForGroupResultWithAlias, GetAppDTMInfoResultWithAlias, FindDBByNameResultWithAlias, } from './transform.js';
|
|
31
|
+
import type { XmlCaller } from './types.js';
|
|
32
|
+
import type { GetRoleInfoResult, UserRolesResult, GetUserRoleResult, GetUsersInGroupResult, CreateGroupResult, GetGroupRoleResult, ProvisionUserResult, UserInfo, DBInfo, AddReplaceDBPageResult, PageType, DoQueryCountResult, GrantedGroupsResult, GetAncestorInfoResult, ImportFromCSVResult, CopyMasterDetailResult, WebhooksCreateOptions, WebhooksEditOptions } from './types.js';
|
|
33
|
+
/**
|
|
34
|
+
* Check if an XML API action modifies data.
|
|
35
|
+
*/
|
|
36
|
+
export declare function isXmlWriteAction(action: string): boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Options for creating an XML client
|
|
39
|
+
*/
|
|
40
|
+
export interface XmlClientOptions {
|
|
41
|
+
/** Block all write operations (read-only mode) */
|
|
42
|
+
readOnly?: boolean;
|
|
43
|
+
/** Schema for table/field alias resolution (typically inherited from main client) */
|
|
44
|
+
schema?: ResolvedSchema;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* XML API Client
|
|
48
|
+
*
|
|
49
|
+
* Provides methods for calling legacy QuickBase XML API endpoints.
|
|
50
|
+
* Create using the `createXmlClient()` function.
|
|
51
|
+
*/
|
|
52
|
+
export declare class XmlClient {
|
|
53
|
+
private readonly caller;
|
|
54
|
+
private readonly readOnly;
|
|
55
|
+
private readonly schema?;
|
|
56
|
+
constructor(caller: XmlCaller, options?: XmlClientOptions);
|
|
57
|
+
/**
|
|
58
|
+
* Resolve a table alias to its ID using the configured schema.
|
|
59
|
+
* If no schema is configured or the input is already a table ID, returns unchanged.
|
|
60
|
+
*/
|
|
61
|
+
private resolveTable;
|
|
62
|
+
/**
|
|
63
|
+
* Resolve a field alias to its ID using the configured schema.
|
|
64
|
+
* If no schema is configured or the input is already a field ID, returns unchanged.
|
|
65
|
+
*/
|
|
66
|
+
private resolveField;
|
|
67
|
+
/**
|
|
68
|
+
* Check if an action is allowed (not blocked by read-only mode).
|
|
69
|
+
* Throws ReadOnlyError if the action is blocked.
|
|
70
|
+
*/
|
|
71
|
+
private checkWriteAllowed;
|
|
72
|
+
/**
|
|
73
|
+
* Execute a raw XML API request.
|
|
74
|
+
* Enforces read-only mode if enabled.
|
|
75
|
+
* This is exposed for direct XML API calls not covered by typed methods.
|
|
76
|
+
*/
|
|
77
|
+
executeXml(dbid: string, action: string, body: string): Promise<string>;
|
|
78
|
+
/**
|
|
79
|
+
* Get the realm name
|
|
80
|
+
*/
|
|
81
|
+
realm(): string;
|
|
82
|
+
/**
|
|
83
|
+
* Get all roles defined in an application.
|
|
84
|
+
* @see https://help.quickbase.com/docs/api-getroleinfo
|
|
85
|
+
*/
|
|
86
|
+
getRoleInfo(appId: string): Promise<GetRoleInfoResult>;
|
|
87
|
+
/**
|
|
88
|
+
* Get all users in an application and their role assignments.
|
|
89
|
+
* @see https://help.quickbase.com/docs/api-userroles
|
|
90
|
+
*/
|
|
91
|
+
userRoles(appId: string): Promise<UserRolesResult>;
|
|
92
|
+
/**
|
|
93
|
+
* Get roles for a specific user.
|
|
94
|
+
* @see https://help.quickbase.com/docs/api-getuserrole
|
|
95
|
+
*/
|
|
96
|
+
getUserRole(appId: string, userId?: string, includeGroups?: boolean): Promise<GetUserRoleResult>;
|
|
97
|
+
/**
|
|
98
|
+
* Assign a user to a role.
|
|
99
|
+
* @see https://help.quickbase.com/docs/api-addusertorole
|
|
100
|
+
*/
|
|
101
|
+
addUserToRole(appId: string, userId: string, roleId: number): Promise<void>;
|
|
102
|
+
/**
|
|
103
|
+
* Remove a user from a role.
|
|
104
|
+
* @see https://help.quickbase.com/docs/api-removeuserfromrole
|
|
105
|
+
*/
|
|
106
|
+
removeUserFromRole(appId: string, userId: string, roleId: number): Promise<void>;
|
|
107
|
+
/**
|
|
108
|
+
* Change a user's role.
|
|
109
|
+
* @see https://help.quickbase.com/docs/api-changeuserrole
|
|
110
|
+
*/
|
|
111
|
+
changeUserRole(appId: string, userId: string, currentRoleId: number, newRoleId?: number): Promise<void>;
|
|
112
|
+
/**
|
|
113
|
+
* Create a new group.
|
|
114
|
+
* @see https://help.quickbase.com/docs/api-creategroup
|
|
115
|
+
*/
|
|
116
|
+
createGroup(name: string, description?: string, accountId?: string): Promise<CreateGroupResult>;
|
|
117
|
+
/**
|
|
118
|
+
* Delete a group.
|
|
119
|
+
* @see https://help.quickbase.com/docs/api-deletegroup
|
|
120
|
+
*/
|
|
121
|
+
deleteGroup(groupId: string): Promise<void>;
|
|
122
|
+
/**
|
|
123
|
+
* Copy a group.
|
|
124
|
+
* @see https://help.quickbase.com/docs/api-copygroup
|
|
125
|
+
*/
|
|
126
|
+
copyGroup(groupId: string, name?: string, description?: string, accountId?: string): Promise<CreateGroupResult>;
|
|
127
|
+
/**
|
|
128
|
+
* Change group information.
|
|
129
|
+
* @see https://help.quickbase.com/docs/api-changegroupinfo
|
|
130
|
+
*/
|
|
131
|
+
changeGroupInfo(groupId: string, name?: string, description?: string, accountId?: string): Promise<void>;
|
|
132
|
+
/**
|
|
133
|
+
* Get users and managers in a group.
|
|
134
|
+
* @see https://help.quickbase.com/docs/api-getusersingroup
|
|
135
|
+
*/
|
|
136
|
+
getUsersInGroup(groupId: string, includeManagers?: boolean): Promise<GetUsersInGroupResult>;
|
|
137
|
+
/**
|
|
138
|
+
* Add a user to a group.
|
|
139
|
+
* @see https://help.quickbase.com/docs/api-addusertogroup
|
|
140
|
+
*/
|
|
141
|
+
addUserToGroup(groupId: string, userId: string, allowAdminAccess?: boolean): Promise<void>;
|
|
142
|
+
/**
|
|
143
|
+
* Remove a user from a group.
|
|
144
|
+
* @see https://help.quickbase.com/docs/api-removeuserfromgroup
|
|
145
|
+
*/
|
|
146
|
+
removeUserFromGroup(groupId: string, userId: string): Promise<void>;
|
|
147
|
+
/**
|
|
148
|
+
* Get roles assigned to a group in an app.
|
|
149
|
+
* @see https://help.quickbase.com/docs/api-getgrouprole
|
|
150
|
+
*/
|
|
151
|
+
getGroupRole(appId: string, groupId: string): Promise<GetGroupRoleResult>;
|
|
152
|
+
/**
|
|
153
|
+
* Assign a group to a role.
|
|
154
|
+
* @see https://help.quickbase.com/docs/api-addgrouptorole
|
|
155
|
+
*/
|
|
156
|
+
addGroupToRole(appId: string, groupId: string, roleId: number): Promise<void>;
|
|
157
|
+
/**
|
|
158
|
+
* Remove a group from a role.
|
|
159
|
+
* @see https://help.quickbase.com/docs/api-removegroupfromrole
|
|
160
|
+
*/
|
|
161
|
+
removeGroupFromRole(appId: string, groupId: string, roleId: number, allRoles?: boolean): Promise<void>;
|
|
162
|
+
/**
|
|
163
|
+
* Get groups a user belongs to.
|
|
164
|
+
* @see https://help.quickbase.com/docs/api-grantedgroups
|
|
165
|
+
*/
|
|
166
|
+
grantedGroups(userId?: string, adminOnly?: boolean): Promise<GrantedGroupsResult>;
|
|
167
|
+
/**
|
|
168
|
+
* Get apps a group can access.
|
|
169
|
+
* @see https://help.quickbase.com/docs/api-granteddbsforgroup
|
|
170
|
+
*/
|
|
171
|
+
grantedDBsForGroup(groupId: string): Promise<GrantedDBsForGroupResultWithAlias>;
|
|
172
|
+
/**
|
|
173
|
+
* Add a subgroup to a group.
|
|
174
|
+
* @see https://help.quickbase.com/docs/api-addsubgroup
|
|
175
|
+
*/
|
|
176
|
+
addSubgroup(groupId: string, subgroupId: string): Promise<void>;
|
|
177
|
+
/**
|
|
178
|
+
* Remove a subgroup from a group.
|
|
179
|
+
* @see https://help.quickbase.com/docs/api-removesubgroup
|
|
180
|
+
*/
|
|
181
|
+
removeSubgroup(groupId: string, subgroupId: string): Promise<void>;
|
|
182
|
+
/**
|
|
183
|
+
* Get user information by email.
|
|
184
|
+
* @see https://help.quickbase.com/docs/api-getuserinfo
|
|
185
|
+
*/
|
|
186
|
+
getUserInfo(email?: string): Promise<UserInfo>;
|
|
187
|
+
/**
|
|
188
|
+
* Create a new unregistered user.
|
|
189
|
+
* @see https://help.quickbase.com/docs/api-provisionuser
|
|
190
|
+
*/
|
|
191
|
+
provisionUser(appId: string, email: string, firstName: string, lastName: string, roleId?: number): Promise<ProvisionUserResult>;
|
|
192
|
+
/**
|
|
193
|
+
* Send invitation email to a user.
|
|
194
|
+
* @see https://help.quickbase.com/docs/api-sendinvitation
|
|
195
|
+
*/
|
|
196
|
+
sendInvitation(appId: string, userId: string, userText?: string): Promise<void>;
|
|
197
|
+
/**
|
|
198
|
+
* Change the application manager.
|
|
199
|
+
* @see https://help.quickbase.com/docs/api-changemanager
|
|
200
|
+
*/
|
|
201
|
+
changeManager(appId: string, newManagerEmail: string): Promise<void>;
|
|
202
|
+
/**
|
|
203
|
+
* Change the owner of a record.
|
|
204
|
+
* @see https://help.quickbase.com/docs/api-changerecordowner
|
|
205
|
+
*/
|
|
206
|
+
changeRecordOwner(tableId: string, recordId: number, newOwner: string): Promise<void>;
|
|
207
|
+
/**
|
|
208
|
+
* List all apps/tables the user can access.
|
|
209
|
+
* @see https://help.quickbase.com/docs/api-granteddbs
|
|
210
|
+
*/
|
|
211
|
+
grantedDBs(options?: {
|
|
212
|
+
parentsOnly?: boolean;
|
|
213
|
+
excludeParents?: boolean;
|
|
214
|
+
adminOnly?: boolean;
|
|
215
|
+
includeAncestors?: boolean;
|
|
216
|
+
withEmbeddedTables?: boolean;
|
|
217
|
+
realmAppsOnly?: boolean;
|
|
218
|
+
}): Promise<GrantedDBsResultWithAlias>;
|
|
219
|
+
/**
|
|
220
|
+
* Find an app by name.
|
|
221
|
+
* @see https://help.quickbase.com/docs/api-finddbbyname
|
|
222
|
+
*/
|
|
223
|
+
findDBByName(name: string, parentsOnly?: boolean): Promise<FindDBByNameResultWithAlias>;
|
|
224
|
+
/**
|
|
225
|
+
* Get app/table metadata.
|
|
226
|
+
* @see https://help.quickbase.com/docs/api-getdbinfo
|
|
227
|
+
*/
|
|
228
|
+
getDBInfo(dbid: string): Promise<DBInfo>;
|
|
229
|
+
/**
|
|
230
|
+
* Get total record count for a table.
|
|
231
|
+
* @see https://help.quickbase.com/docs/api-getnumrecords
|
|
232
|
+
*/
|
|
233
|
+
getNumRecords(tableId: string): Promise<number>;
|
|
234
|
+
/**
|
|
235
|
+
* Get comprehensive app/table metadata.
|
|
236
|
+
* @see https://help.quickbase.com/docs/api-getschema
|
|
237
|
+
*/
|
|
238
|
+
getSchema(dbid: string): Promise<GetSchemaResultWithAlias>;
|
|
239
|
+
/**
|
|
240
|
+
* Get an application variable value.
|
|
241
|
+
* @see https://help.quickbase.com/docs/api-getdbvar
|
|
242
|
+
*/
|
|
243
|
+
getDBVar(appId: string, varName: string): Promise<string>;
|
|
244
|
+
/**
|
|
245
|
+
* Set an application variable value.
|
|
246
|
+
* @see https://help.quickbase.com/docs/api-setdbvar
|
|
247
|
+
*/
|
|
248
|
+
setDBVar(appId: string, varName: string, value: string): Promise<void>;
|
|
249
|
+
/**
|
|
250
|
+
* Get stored code page content.
|
|
251
|
+
* @see https://help.quickbase.com/docs/api-getdbpage
|
|
252
|
+
*/
|
|
253
|
+
getDBPage(appId: string, pageIdOrName: string | number): Promise<string>;
|
|
254
|
+
/**
|
|
255
|
+
* Create or update a code page.
|
|
256
|
+
* @see https://help.quickbase.com/docs/api-addreplacedbpage
|
|
257
|
+
*/
|
|
258
|
+
addReplaceDBPage(appId: string, pageName: string, pageId: number | undefined, pageType: PageType, pageBody: string): Promise<AddReplaceDBPageResult>;
|
|
259
|
+
/**
|
|
260
|
+
* Add choices to a multiple-choice field.
|
|
261
|
+
* @see https://help.quickbase.com/docs/api-fieldaddchoices
|
|
262
|
+
*/
|
|
263
|
+
fieldAddChoices(tableId: string, fieldId: number | string, choices: string[]): Promise<FieldAddChoicesResultWithAlias>;
|
|
264
|
+
/**
|
|
265
|
+
* Remove choices from a multiple-choice field.
|
|
266
|
+
* @see https://help.quickbase.com/docs/api-fieldremovechoices
|
|
267
|
+
*/
|
|
268
|
+
fieldRemoveChoices(tableId: string, fieldId: number | string, choices: string[]): Promise<FieldRemoveChoicesResultWithAlias>;
|
|
269
|
+
/**
|
|
270
|
+
* Set the key field for a table.
|
|
271
|
+
* @see https://help.quickbase.com/docs/api-setkeyfield
|
|
272
|
+
*/
|
|
273
|
+
setKeyField(tableId: string, fieldId: number | string): Promise<void>;
|
|
274
|
+
/**
|
|
275
|
+
* Get count of matching records without fetching data.
|
|
276
|
+
* @see https://help.quickbase.com/docs/api-doquerycount
|
|
277
|
+
*/
|
|
278
|
+
doQueryCount(tableId: string, query?: string): Promise<DoQueryCountResult>;
|
|
279
|
+
/**
|
|
280
|
+
* Get a record with field metadata.
|
|
281
|
+
* @see https://help.quickbase.com/docs/api-getrecordinfo
|
|
282
|
+
*/
|
|
283
|
+
getRecordInfo(tableId: string, recordId: number): Promise<GetRecordInfoResultWithAlias>;
|
|
284
|
+
/**
|
|
285
|
+
* Get a record by key field value.
|
|
286
|
+
* @see https://help.quickbase.com/docs/api-getrecordinfo
|
|
287
|
+
*/
|
|
288
|
+
getRecordInfoByKey(tableId: string, keyValue: string): Promise<GetRecordInfoResultWithAlias>;
|
|
289
|
+
/**
|
|
290
|
+
* Bulk import/update records from CSV data.
|
|
291
|
+
* @see https://help.quickbase.com/docs/api-importfromcsv
|
|
292
|
+
*/
|
|
293
|
+
importFromCSV(tableId: string, options: {
|
|
294
|
+
recordsCsv: string;
|
|
295
|
+
clist?: (number | string)[];
|
|
296
|
+
skipFirst?: boolean;
|
|
297
|
+
mergeFieldId?: number | string;
|
|
298
|
+
decimalPercent?: boolean;
|
|
299
|
+
}): Promise<ImportFromCSVResult>;
|
|
300
|
+
/**
|
|
301
|
+
* Execute a saved import definition.
|
|
302
|
+
* @see https://help.quickbase.com/docs/api-runimport
|
|
303
|
+
*/
|
|
304
|
+
runImport(tableId: string, importId: number): Promise<ImportFromCSVResult>;
|
|
305
|
+
/**
|
|
306
|
+
* Copy a master record with its detail records.
|
|
307
|
+
* @see https://help.quickbase.com/docs/api-copymasterdetail
|
|
308
|
+
*/
|
|
309
|
+
copyMasterDetail(tableId: string, options: {
|
|
310
|
+
rid: number;
|
|
311
|
+
copyfid?: number | string;
|
|
312
|
+
recurse?: boolean;
|
|
313
|
+
relfids?: (number | string)[];
|
|
314
|
+
}): Promise<CopyMasterDetailResult>;
|
|
315
|
+
/**
|
|
316
|
+
* Get modification timestamps (fast, no auth required).
|
|
317
|
+
* @see https://help.quickbase.com/docs/api-getappdtminfo
|
|
318
|
+
*/
|
|
319
|
+
getAppDTMInfo(appId: string): Promise<GetAppDTMInfoResultWithAlias>;
|
|
320
|
+
/**
|
|
321
|
+
* Get app copy/template lineage info.
|
|
322
|
+
* @see https://help.quickbase.com/docs/api-getancestorinfo
|
|
323
|
+
*/
|
|
324
|
+
getAncestorInfo(appId: string): Promise<GetAncestorInfoResult>;
|
|
325
|
+
/**
|
|
326
|
+
* Create a webhook.
|
|
327
|
+
* @see https://help.quickbase.com/docs/api-webhooks-create
|
|
328
|
+
*/
|
|
329
|
+
webhooksCreate(tableId: string, options: WebhooksCreateOptions): Promise<void>;
|
|
330
|
+
/**
|
|
331
|
+
* Edit a webhook.
|
|
332
|
+
* @see https://help.quickbase.com/docs/api-webhooks-edit
|
|
333
|
+
*/
|
|
334
|
+
webhooksEdit(tableId: string, actionId: string, options: WebhooksEditOptions): Promise<void>;
|
|
335
|
+
/**
|
|
336
|
+
* Delete webhooks.
|
|
337
|
+
* @see https://help.quickbase.com/docs/api-webhooks-delete
|
|
338
|
+
*/
|
|
339
|
+
webhooksDelete(tableId: string, actionIds: string[]): Promise<{
|
|
340
|
+
numChanged: number;
|
|
341
|
+
}>;
|
|
342
|
+
/**
|
|
343
|
+
* Activate webhooks.
|
|
344
|
+
* @see https://help.quickbase.com/docs/api-webhooks-activate
|
|
345
|
+
*/
|
|
346
|
+
webhooksActivate(tableId: string, actionIds: string[]): Promise<{
|
|
347
|
+
numChanged: number;
|
|
348
|
+
}>;
|
|
349
|
+
/**
|
|
350
|
+
* Deactivate webhooks.
|
|
351
|
+
* @see https://help.quickbase.com/docs/api-webhooks-deactivate
|
|
352
|
+
*/
|
|
353
|
+
webhooksDeactivate(tableId: string, actionIds: string[]): Promise<{
|
|
354
|
+
numChanged: number;
|
|
355
|
+
}>;
|
|
356
|
+
/**
|
|
357
|
+
* Copy a webhook.
|
|
358
|
+
* @see https://help.quickbase.com/docs/api-webhooks-copy
|
|
359
|
+
*/
|
|
360
|
+
webhooksCopy(tableId: string, actionId: string): Promise<{
|
|
361
|
+
actionId: string;
|
|
362
|
+
}>;
|
|
363
|
+
/**
|
|
364
|
+
* Generate HTML form for adding a record.
|
|
365
|
+
* @see https://help.quickbase.com/docs/api-genaddrecordform
|
|
366
|
+
*/
|
|
367
|
+
genAddRecordForm(tableId: string, fields?: Array<{
|
|
368
|
+
id: number | string;
|
|
369
|
+
value: string;
|
|
370
|
+
}>): Promise<string>;
|
|
371
|
+
/**
|
|
372
|
+
* Generate HTML/JS/CSV table of query results.
|
|
373
|
+
* @see https://help.quickbase.com/docs/api-genresultstable
|
|
374
|
+
*/
|
|
375
|
+
genResultsTable(tableId: string, options?: {
|
|
376
|
+
query?: string;
|
|
377
|
+
clist?: (number | string)[];
|
|
378
|
+
slist?: (number | string)[];
|
|
379
|
+
options?: string;
|
|
380
|
+
format?: 'structured' | 'csv';
|
|
381
|
+
}): Promise<string>;
|
|
382
|
+
/**
|
|
383
|
+
* Get a record rendered as HTML.
|
|
384
|
+
* @see https://help.quickbase.com/docs/api-getrecordashtml
|
|
385
|
+
*/
|
|
386
|
+
getRecordAsHTML(tableId: string, options: {
|
|
387
|
+
rid?: number;
|
|
388
|
+
key?: string;
|
|
389
|
+
jht?: boolean;
|
|
390
|
+
dfid?: number | string;
|
|
391
|
+
}): Promise<string>;
|
|
392
|
+
/**
|
|
393
|
+
* Clear ticket cookie (browser-focused).
|
|
394
|
+
* @see https://help.quickbase.com/docs/api-signout
|
|
395
|
+
*/
|
|
396
|
+
signOut(): Promise<void>;
|
|
397
|
+
}
|
|
398
|
+
/**
|
|
399
|
+
* Interface for objects that can execute XML API requests.
|
|
400
|
+
* Used to adapt the main QuickBase client for XML API calls.
|
|
401
|
+
*/
|
|
402
|
+
export interface XmlExecutor {
|
|
403
|
+
/**
|
|
404
|
+
* Execute an XML API request
|
|
405
|
+
* @param dbid - The database ID
|
|
406
|
+
* @param action - The QUICKBASE-ACTION header value
|
|
407
|
+
* @param body - The XML request body
|
|
408
|
+
* @returns The raw XML response body
|
|
409
|
+
*/
|
|
410
|
+
executeXml(dbid: string, action: string, body: string): Promise<string>;
|
|
411
|
+
/**
|
|
412
|
+
* Get the realm name
|
|
413
|
+
*/
|
|
414
|
+
realm: string;
|
|
415
|
+
}
|
|
416
|
+
/**
|
|
417
|
+
* Adapter to create an XmlCaller from a QuickbaseClient.
|
|
418
|
+
* This bridges the main client to the XML API client.
|
|
419
|
+
*/
|
|
420
|
+
interface QuickbaseClientLike {
|
|
421
|
+
getConfig(): {
|
|
422
|
+
realm: string;
|
|
423
|
+
fetchApi: typeof fetch;
|
|
424
|
+
timeout: number;
|
|
425
|
+
readOnly?: boolean;
|
|
426
|
+
schema?: ResolvedSchema;
|
|
427
|
+
};
|
|
428
|
+
/**
|
|
429
|
+
* Get the auth strategy for XML requests.
|
|
430
|
+
* This is exposed via getAuthStrategy() method added to the client.
|
|
431
|
+
*/
|
|
432
|
+
getAuthStrategy?: () => {
|
|
433
|
+
getToken(dbid?: string): Promise<string>;
|
|
434
|
+
getAuthorizationHeader(token: string): string;
|
|
435
|
+
};
|
|
436
|
+
}
|
|
437
|
+
/**
|
|
438
|
+
* Create an XML API client from a QuickBase client.
|
|
439
|
+
*
|
|
440
|
+
* @param client - The main QuickBase client
|
|
441
|
+
* @param options - Options for the XML client
|
|
442
|
+
* @returns XmlClient instance
|
|
443
|
+
*
|
|
444
|
+
* @example
|
|
445
|
+
* ```typescript
|
|
446
|
+
* const qb = createClient({ realm: 'myrealm', auth: {...} });
|
|
447
|
+
* const xml = createXmlClient(qb);
|
|
448
|
+
*
|
|
449
|
+
* const roles = await xml.getRoleInfo('bqxyz123');
|
|
450
|
+
* ```
|
|
451
|
+
*/
|
|
452
|
+
export declare function createXmlClient(client: QuickbaseClientLike, options?: XmlClientOptions): XmlClient;
|
|
453
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/xml/index.ts"],"names":[],"mappings":"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"}
|