quickbase-js 0.1.0-beta.7

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.
Files changed (123) hide show
  1. package/CHANGELOG.md +129 -0
  2. package/LICENSE +21 -0
  3. package/README.md +204 -0
  4. package/build-common.js +131 -0
  5. package/build-esm.js +71 -0
  6. package/build-umd.js +69 -0
  7. package/dist/esm/quickbase.d.ts +7594 -0
  8. package/dist/esm/quickbase.js +9752 -0
  9. package/dist/esm/quickbase.js.map +1 -0
  10. package/dist/esm/quickbase.min.js +2 -0
  11. package/dist/esm/quickbase.min.js.map +1 -0
  12. package/dist/umd/quickbase.umd.js +10502 -0
  13. package/dist/umd/quickbase.umd.js.map +1 -0
  14. package/dist/umd/quickbase.umd.min.js +2 -0
  15. package/dist/umd/quickbase.umd.min.js.map +1 -0
  16. package/examples/quicbase-jsCDN.html +36 -0
  17. package/examples/react.js +48 -0
  18. package/examples/vanillajs.html +47 -0
  19. package/notes.txt +158 -0
  20. package/open-api/fix-spec-main.ts +96 -0
  21. package/open-api/generate-unified-interface.ts +277 -0
  22. package/open-api/output/override-report.json +58 -0
  23. package/open-api/output/quickbase-fixed.json +10610 -0
  24. package/open-api/regenerate-client.ts +116 -0
  25. package/open-api/schema/enhance-general.ts +100 -0
  26. package/open-api/schema/fix-arrays.ts +69 -0
  27. package/open-api/schema/tags/apps.ts +90 -0
  28. package/open-api/schema/tags/fields.ts +156 -0
  29. package/open-api/schema/tags/groups.ts +51 -0
  30. package/open-api/schema/tags/index.ts +68 -0
  31. package/open-api/schema/tags/records.ts +115 -0
  32. package/open-api/schema/tags/tables.ts +211 -0
  33. package/open-api/schema/tags/users.ts +47 -0
  34. package/open-api/types/spec.ts +41 -0
  35. package/open-api/utils/infer-schema.ts +40 -0
  36. package/open-api/utils/naming.ts +10 -0
  37. package/package.json +91 -0
  38. package/playwright.config.ts +37 -0
  39. package/rollup.config.js +114 -0
  40. package/specs/QuickBase_RESTful_API_2025-03-04T06_22_39.725Z.json +46878 -0
  41. package/specs/split/apps.json +1315 -0
  42. package/specs/split/auth.json +191 -0
  43. package/specs/split/fields.json +3869 -0
  44. package/specs/split/records.json +754 -0
  45. package/specs/split/reports.json +619 -0
  46. package/specs/split/tables.json +1605 -0
  47. package/src/generated-unified/QuickbaseClient.ts +359 -0
  48. package/src/generated-unified/missing-types-report.json +3 -0
  49. package/src/index.ts +1 -0
  50. package/src/quickbaseClient.ts +402 -0
  51. package/src/tokenCache.ts +51 -0
  52. package/src/utils.ts +7 -0
  53. package/test-esm.js +1 -0
  54. package/test-results.json +2050 -0
  55. package/test-umd.js +1 -0
  56. package/test.ts +1 -0
  57. package/tests/playwright/qb/auth/cacheSwitching.test.ts +159 -0
  58. package/tests/playwright/qb/auth/fetchTempToken401.test.ts +219 -0
  59. package/tests/playwright/qb/auth/getAppWithTempToken.test.ts +162 -0
  60. package/tests/playwright/qb/auth/getAppWithUserToken.test.ts +153 -0
  61. package/tests/playwright/qb/auth/getTempToken.test.ts +152 -0
  62. package/tests/playwright/qb/auth/tokenPrefetch.test.ts +179 -0
  63. package/tests/playwright/qb/auth/tokenRenewal.test.ts +133 -0
  64. package/tests/setup.ts +51 -0
  65. package/tests/vitest/qb/apps/copyApp.test.ts +76 -0
  66. package/tests/vitest/qb/apps/createApp.test.ts +64 -0
  67. package/tests/vitest/qb/apps/deleteApp.test.ts +76 -0
  68. package/tests/vitest/qb/apps/getApp.test.ts +40 -0
  69. package/tests/vitest/qb/fields/createField.test.ts +78 -0
  70. package/tests/vitest/qb/fields/deleteFields.test.ts +89 -0
  71. package/tests/vitest/qb/fields/getField.test.ts +85 -0
  72. package/tests/vitest/qb/fields/getFieldUsage.test.ts +174 -0
  73. package/tests/vitest/qb/fields/getFields.test.ts +232 -0
  74. package/tests/vitest/qb/fields/getFieldsUsage.test.ts +77 -0
  75. package/tests/vitest/qb/index.ts +28 -0
  76. package/tests/vitest/qb/records/deleteRecords.test.ts +110 -0
  77. package/tests/vitest/qb/records/runQuery.test.ts +146 -0
  78. package/tests/vitest/qb/records/upsert.test.ts +102 -0
  79. package/tests/vitest/qb/tables/createTable.test.ts +55 -0
  80. package/tests/vitest/qb/tables/deleteTable.test.ts +50 -0
  81. package/tests/vitest/qb/tables/getAppTables.test.ts +46 -0
  82. package/tests/vitest/qb/tables/getRelationships.test.ts +80 -0
  83. package/tests/vitest/qb/tables/getTable.test.ts +26 -0
  84. package/tests/vitest/qb/tables/updateTable.test.ts +48 -0
  85. package/tests/vitest/unit/apps/copyApp.test.ts +488 -0
  86. package/tests/vitest/unit/apps/createApp.test.ts +186 -0
  87. package/tests/vitest/unit/apps/deleteApp.test.ts +216 -0
  88. package/tests/vitest/unit/apps/getApp.test.ts +128 -0
  89. package/tests/vitest/unit/auth/fetchTempToken401.test.ts +82 -0
  90. package/tests/vitest/unit/auth/getTempToken.test.ts +95 -0
  91. package/tests/vitest/unit/auth/retryOn401.test.ts +116 -0
  92. package/tests/vitest/unit/auth/two401s.test.ts +86 -0
  93. package/tests/vitest/unit/fields/createField.test.ts +391 -0
  94. package/tests/vitest/unit/fields/deleteFields.test.ts +141 -0
  95. package/tests/vitest/unit/fields/getField.test.ts +189 -0
  96. package/tests/vitest/unit/fields/getFieldUsage.test.ts +147 -0
  97. package/tests/vitest/unit/fields/getFields.test.ts +122 -0
  98. package/tests/vitest/unit/fields/getFieldsUsage.test.ts +160 -0
  99. package/tests/vitest/unit/index.ts +33 -0
  100. package/tests/vitest/unit/records/deleteRecords.test.ts +112 -0
  101. package/tests/vitest/unit/records/runQuery.test.ts +102 -0
  102. package/tests/vitest/unit/records/upsert.test.ts +234 -0
  103. package/tests/vitest/unit/tables/createTable.test.ts +70 -0
  104. package/tests/vitest/unit/tables/deleteTable.test.ts +77 -0
  105. package/tests/vitest/unit/tables/getAppTables.test.ts +85 -0
  106. package/tests/vitest/unit/tables/getRelationships.test.ts +259 -0
  107. package/tests/vitest/unit/tables/getTable.test.ts +233 -0
  108. package/tests/vitest/unit/tables/updateTable.test.ts +80 -0
  109. package/tests/vitest/unit/umd.test.ts +8 -0
  110. package/text.txt +104 -0
  111. package/tools/generate-types.ts +29 -0
  112. package/tools/log-gen.ts +231 -0
  113. package/tools/log-gen.yaml +3826 -0
  114. package/tools/openapi-jars/openapi-generator-cli-7.12.0.jar +0 -0
  115. package/tools/openapi-schema-validator.ts +38 -0
  116. package/tools/spec-analyzer.ts +163 -0
  117. package/tools/split-spec.ts +148 -0
  118. package/tools/test-import.ts +3 -0
  119. package/tools/validate-spec.ts +40 -0
  120. package/tsconfig.build.json +17 -0
  121. package/tsconfig.json +29 -0
  122. package/versionrc.json +9 -0
  123. package/vitest.config.ts +27 -0
@@ -0,0 +1,2050 @@
1
+ {
2
+ "config": {
3
+ "configFile": "/home/drew/Projects/quickbase-js/playwright.config.ts",
4
+ "rootDir": "/home/drew/Projects/quickbase-js/tests/playwright",
5
+ "forbidOnly": false,
6
+ "fullyParallel": true,
7
+ "globalSetup": null,
8
+ "globalTeardown": null,
9
+ "globalTimeout": 0,
10
+ "grep": {},
11
+ "grepInvert": null,
12
+ "maxFailures": 0,
13
+ "metadata": {
14
+ "actualWorkers": 4
15
+ },
16
+ "preserveOutput": "always",
17
+ "reporter": [
18
+ [
19
+ "list",
20
+ null
21
+ ],
22
+ [
23
+ "json",
24
+ {
25
+ "outputFile": "test-results.json"
26
+ }
27
+ ]
28
+ ],
29
+ "reportSlowTests": {
30
+ "max": 5,
31
+ "threshold": 300000
32
+ },
33
+ "quiet": false,
34
+ "projects": [
35
+ {
36
+ "outputDir": "/home/drew/Projects/quickbase-js/test-results",
37
+ "repeatEach": 1,
38
+ "retries": 2,
39
+ "metadata": {
40
+ "actualWorkers": 4
41
+ },
42
+ "id": "chromium",
43
+ "name": "chromium",
44
+ "testDir": "/home/drew/Projects/quickbase-js/tests/playwright",
45
+ "testIgnore": [],
46
+ "testMatch": [
47
+ "**/*.@(spec|test).?(c|m)[jt]s?(x)"
48
+ ],
49
+ "timeout": 600000
50
+ }
51
+ ],
52
+ "shard": null,
53
+ "updateSnapshots": "missing",
54
+ "updateSourceMethod": "patch",
55
+ "version": "1.51.0",
56
+ "workers": 4,
57
+ "webServer": null
58
+ },
59
+ "suites": [
60
+ {
61
+ "title": "qb/auth/cacheSwitching.test.ts",
62
+ "file": "qb/auth/cacheSwitching.test.ts",
63
+ "column": 0,
64
+ "line": 0,
65
+ "specs": [],
66
+ "suites": [
67
+ {
68
+ "title": "QuickbaseClient Integration - Cache Switching with Temp Tokens",
69
+ "file": "qb/auth/cacheSwitching.test.ts",
70
+ "line": 61,
71
+ "column": 6,
72
+ "specs": [
73
+ {
74
+ "title": "caches and switches tokens for different DBIDs with getApp → getFields → getApp sequence",
75
+ "ok": true,
76
+ "tags": [],
77
+ "tests": [
78
+ {
79
+ "timeout": 600000,
80
+ "annotations": [],
81
+ "expectedStatus": "passed",
82
+ "projectId": "chromium",
83
+ "projectName": "chromium",
84
+ "results": [
85
+ {
86
+ "workerIndex": 0,
87
+ "parallelIndex": 0,
88
+ "status": "passed",
89
+ "duration": 13033,
90
+ "errors": [],
91
+ "stdout": [
92
+ {
93
+ "text": "Starting cacheSwitching test\n"
94
+ },
95
+ {
96
+ "text": "Logging in to QuickBase\n"
97
+ },
98
+ {
99
+ "text": "Navigating to login page\n"
100
+ },
101
+ {
102
+ "text": "Waiting for loginid selector\n"
103
+ },
104
+ {
105
+ "text": "Clicking signin\n"
106
+ },
107
+ {
108
+ "text": "Waiting for navigation\n"
109
+ },
110
+ {
111
+ "text": "Signed In to QuickBase.\n"
112
+ },
113
+ {
114
+ "text": "Post-login URL after app navigation: https://builderprogram-dbradford6815.quickbase.com/nav/app/buwai2zpe/action/appoverview\n"
115
+ },
116
+ {
117
+ "text": "Mapped copyApp to copyApp\n"
118
+ },
119
+ {
120
+ "text": "Mapped createApp to createApp\n"
121
+ },
122
+ {
123
+ "text": "Mapped getApp to getApp\n"
124
+ },
125
+ {
126
+ "text": "Mapped getAppEvents to getAppEvents\n"
127
+ },
128
+ {
129
+ "text": "Mapped audit to audit\n"
130
+ },
131
+ {
132
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
133
+ },
134
+ {
135
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
136
+ },
137
+ {
138
+ "text": "Mapped generateDocument to generateDocument\n"
139
+ },
140
+ {
141
+ "text": "Mapped getField to getField\n"
142
+ },
143
+ {
144
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
145
+ },
146
+ {
147
+ "text": "Mapped getFields to getFields\n"
148
+ },
149
+ {
150
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
151
+ },
152
+ {
153
+ "text": "Mapped updateField to updateField\n"
154
+ },
155
+ {
156
+ "text": "Mapped deleteFile to deleteFile\n"
157
+ },
158
+ {
159
+ "text": "Mapped downloadFile to downloadFile\n"
160
+ },
161
+ {
162
+ "text": "Mapped runFormula to runFormula\n"
163
+ },
164
+ {
165
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
166
+ },
167
+ {
168
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
169
+ },
170
+ {
171
+ "text": "Mapped deleteRecords to deleteRecords\n"
172
+ },
173
+ {
174
+ "text": "Mapped upsert to upsert\n"
175
+ },
176
+ {
177
+ "text": "Mapped upsertRecords to upsertRecords\n"
178
+ },
179
+ {
180
+ "text": "Mapped getReport to getReport\n"
181
+ },
182
+ {
183
+ "text": "Mapped getTableReports to getTableReports\n"
184
+ },
185
+ {
186
+ "text": "Mapped runReport to runReport\n"
187
+ },
188
+ {
189
+ "text": "Mapped changesetSolution to changesetSolution\n"
190
+ },
191
+ {
192
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
193
+ },
194
+ {
195
+ "text": "Mapped createSolution to createSolution\n"
196
+ },
197
+ {
198
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
199
+ },
200
+ {
201
+ "text": "Mapped exportSolution to exportSolution\n"
202
+ },
203
+ {
204
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
205
+ },
206
+ {
207
+ "text": "Mapped updateSolution to updateSolution\n"
208
+ },
209
+ {
210
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
211
+ },
212
+ {
213
+ "text": "Mapped createRelationship to createRelationship\n"
214
+ },
215
+ {
216
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
217
+ },
218
+ {
219
+ "text": "Mapped deleteTable to deleteTable\n"
220
+ },
221
+ {
222
+ "text": "Mapped getAppTables to getAppTables\n"
223
+ },
224
+ {
225
+ "text": "Mapped getRelationships to getRelationships\n"
226
+ },
227
+ {
228
+ "text": "Mapped getTable to getTable\n"
229
+ },
230
+ {
231
+ "text": "Mapped updateRelationship to updateRelationship\n"
232
+ },
233
+ {
234
+ "text": "Mapped updateTable to updateTable\n"
235
+ },
236
+ {
237
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
238
+ },
239
+ {
240
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
241
+ },
242
+ {
243
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
244
+ },
245
+ {
246
+ "text": "Mapped transferUserToken to transferUserToken\n"
247
+ },
248
+ {
249
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
250
+ },
251
+ {
252
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
253
+ },
254
+ {
255
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
256
+ },
257
+ {
258
+ "text": "Mapped denyUsers to denyUsers\n"
259
+ },
260
+ {
261
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
262
+ },
263
+ {
264
+ "text": "Mapped getUsers to getUsers\n"
265
+ },
266
+ {
267
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
268
+ },
269
+ {
270
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
271
+ },
272
+ {
273
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
274
+ },
275
+ {
276
+ "text": "Mapped undenyUsers to undenyUsers\n"
277
+ },
278
+ {
279
+ "text": "Proxy called getApp with: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
280
+ },
281
+ {
282
+ "text": "Cache state before fetch for buwai2zpe: []\n"
283
+ },
284
+ {
285
+ "text": "Mapped copyApp to copyApp\n"
286
+ },
287
+ {
288
+ "text": "Mapped createApp to createApp\n"
289
+ },
290
+ {
291
+ "text": "Mapped getApp to getApp\n"
292
+ },
293
+ {
294
+ "text": "Mapped getAppEvents to getAppEvents\n"
295
+ },
296
+ {
297
+ "text": "Mapped audit to audit\n"
298
+ },
299
+ {
300
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
301
+ },
302
+ {
303
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
304
+ },
305
+ {
306
+ "text": "Mapped generateDocument to generateDocument\n"
307
+ },
308
+ {
309
+ "text": "Mapped getField to getField\n"
310
+ },
311
+ {
312
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
313
+ },
314
+ {
315
+ "text": "Mapped getFields to getFields\n"
316
+ },
317
+ {
318
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
319
+ },
320
+ {
321
+ "text": "Mapped updateField to updateField\n"
322
+ },
323
+ {
324
+ "text": "Mapped deleteFile to deleteFile\n"
325
+ },
326
+ {
327
+ "text": "Mapped downloadFile to downloadFile\n"
328
+ },
329
+ {
330
+ "text": "Mapped runFormula to runFormula\n"
331
+ },
332
+ {
333
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
334
+ },
335
+ {
336
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
337
+ },
338
+ {
339
+ "text": "Mapped deleteRecords to deleteRecords\n"
340
+ },
341
+ {
342
+ "text": "Mapped upsert to upsert\n"
343
+ },
344
+ {
345
+ "text": "Mapped upsertRecords to upsertRecords\n"
346
+ },
347
+ {
348
+ "text": "Mapped getReport to getReport\n"
349
+ },
350
+ {
351
+ "text": "Mapped getTableReports to getTableReports\n"
352
+ },
353
+ {
354
+ "text": "Mapped runReport to runReport\n"
355
+ },
356
+ {
357
+ "text": "Mapped changesetSolution to changesetSolution\n"
358
+ },
359
+ {
360
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
361
+ },
362
+ {
363
+ "text": "Mapped createSolution to createSolution\n"
364
+ },
365
+ {
366
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
367
+ },
368
+ {
369
+ "text": "Mapped exportSolution to exportSolution\n"
370
+ },
371
+ {
372
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
373
+ },
374
+ {
375
+ "text": "Mapped updateSolution to updateSolution\n"
376
+ },
377
+ {
378
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
379
+ },
380
+ {
381
+ "text": "Mapped createRelationship to createRelationship\n"
382
+ },
383
+ {
384
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
385
+ },
386
+ {
387
+ "text": "Mapped deleteTable to deleteTable\n"
388
+ },
389
+ {
390
+ "text": "Mapped getAppTables to getAppTables\n"
391
+ },
392
+ {
393
+ "text": "Mapped getRelationships to getRelationships\n"
394
+ },
395
+ {
396
+ "text": "Mapped getTable to getTable\n"
397
+ },
398
+ {
399
+ "text": "Mapped updateRelationship to updateRelationship\n"
400
+ },
401
+ {
402
+ "text": "Mapped updateTable to updateTable\n"
403
+ },
404
+ {
405
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
406
+ },
407
+ {
408
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
409
+ },
410
+ {
411
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
412
+ },
413
+ {
414
+ "text": "Mapped transferUserToken to transferUserToken\n"
415
+ },
416
+ {
417
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
418
+ },
419
+ {
420
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
421
+ },
422
+ {
423
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
424
+ },
425
+ {
426
+ "text": "Mapped denyUsers to denyUsers\n"
427
+ },
428
+ {
429
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
430
+ },
431
+ {
432
+ "text": "Mapped getUsers to getUsers\n"
433
+ },
434
+ {
435
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
436
+ },
437
+ {
438
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
439
+ },
440
+ {
441
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
442
+ },
443
+ {
444
+ "text": "Mapped undenyUsers to undenyUsers\n"
445
+ },
446
+ {
447
+ "text": "Proxy called getTempTokenDBID with: { dbid: \u001b[32m'buwai2zpe'\u001b[39m }\n"
448
+ },
449
+ {
450
+ "text": "Invoking getTempTokenDBID with params: { dbid: \u001b[32m'buwai2zpe'\u001b[39m }\n"
451
+ },
452
+ {
453
+ "text": "Calling method with args: [ { dbid: \u001b[32m'buwai2zpe'\u001b[39m }, {} ]\n"
454
+ },
455
+ {
456
+ "text": "Raw response from https://api.quickbase.com/v1/auth/temporary/buwai2zpe: {\n status: \u001b[33m200\u001b[39m,\n statusText: \u001b[32m''\u001b[39m,\n body: \u001b[32m'{\"temporaryAuthorization\":\"VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24=\"}'\u001b[39m\n}\n"
457
+ },
458
+ {
459
+ "text": "Response from getTempTokenDBID: {\n temporaryAuthorization: \u001b[32m'VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24='\u001b[39m\n}\n"
460
+ },
461
+ {
462
+ "text": "Fetched and cached new token for dbid: buwai2zpe VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24= Expires at: 2025-03-09T15:07:07.992Z\n"
463
+ },
464
+ {
465
+ "text": "Invoking getApp with params: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
466
+ },
467
+ {
468
+ "text": "Calling method with args: [\n { appId: \u001b[32m'buwai2zpe'\u001b[39m },\n {\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24='\u001b[39m\n }\n }\n]\n"
469
+ },
470
+ {
471
+ "text": "Fetching https://api.quickbase.com/v1/apps/buwai2zpe with init: {\n method: \u001b[32m'GET'\u001b[39m,\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24='\u001b[39m\n },\n body: \u001b[90mundefined\u001b[39m,\n credentials: \u001b[32m'omit'\u001b[39m\n}\n"
472
+ },
473
+ {
474
+ "text": "Raw response from https://api.quickbase.com/v1/apps/buwai2zpe: {\n status: \u001b[33m200\u001b[39m,\n statusText: \u001b[32m'OK'\u001b[39m,\n body: \u001b[32m'{\"created\":\"2025-02-13T18:22:33Z\",\"dateFormat\":\"MM-DD-YYYY\",\"description\":\"\",\"hasEveryoneOnTheInternet\":false,\"id\":\"buwai2zpe\",\"memoryInfo\":{\"estMemory\":0.0,\"estMemoryInclDependentApps\":0.0},\"name\":\"qb-copy\",\"securityProperties\":{\"allowClone\":false,\"allowExport\":true,\"enableAppTokens\":true,\"hideFromPublic\":false,\"mustBeRealmApproved\":false,\"useIPFilter\":false},\"timeZone\":\"(UTC-08:00) Pacific Time (US & Canada)\",\"updated\":\"2025-03-04T04:25:51Z\"}'\u001b[39m\n}\n"
475
+ },
476
+ {
477
+ "text": "Response from getApp: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
478
+ },
479
+ {
480
+ "text": "First getApp response: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
481
+ },
482
+ {
483
+ "text": "Proxy called getFields with: { tableId: \u001b[32m'buwai2zws'\u001b[39m }\n"
484
+ },
485
+ {
486
+ "text": "Cache state before fetch for buwai2zws: [\n [\n \u001b[32m'buwai2zpe'\u001b[39m,\n {\n token: \u001b[32m'VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24='\u001b[39m,\n expiresAt: \u001b[33m1741532827992\u001b[39m\n }\n ]\n]\n"
487
+ },
488
+ {
489
+ "text": "Mapped copyApp to copyApp\n"
490
+ },
491
+ {
492
+ "text": "Mapped createApp to createApp\n"
493
+ },
494
+ {
495
+ "text": "Mapped getApp to getApp\n"
496
+ },
497
+ {
498
+ "text": "Mapped getAppEvents to getAppEvents\n"
499
+ },
500
+ {
501
+ "text": "Mapped audit to audit\n"
502
+ },
503
+ {
504
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
505
+ },
506
+ {
507
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
508
+ },
509
+ {
510
+ "text": "Mapped generateDocument to generateDocument\n"
511
+ },
512
+ {
513
+ "text": "Mapped getField to getField\n"
514
+ },
515
+ {
516
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
517
+ },
518
+ {
519
+ "text": "Mapped getFields to getFields\n"
520
+ },
521
+ {
522
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
523
+ },
524
+ {
525
+ "text": "Mapped updateField to updateField\n"
526
+ },
527
+ {
528
+ "text": "Mapped deleteFile to deleteFile\n"
529
+ },
530
+ {
531
+ "text": "Mapped downloadFile to downloadFile\n"
532
+ },
533
+ {
534
+ "text": "Mapped runFormula to runFormula\n"
535
+ },
536
+ {
537
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
538
+ },
539
+ {
540
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
541
+ },
542
+ {
543
+ "text": "Mapped deleteRecords to deleteRecords\n"
544
+ },
545
+ {
546
+ "text": "Mapped upsert to upsert\n"
547
+ },
548
+ {
549
+ "text": "Mapped upsertRecords to upsertRecords\n"
550
+ },
551
+ {
552
+ "text": "Mapped getReport to getReport\n"
553
+ },
554
+ {
555
+ "text": "Mapped getTableReports to getTableReports\n"
556
+ },
557
+ {
558
+ "text": "Mapped runReport to runReport\n"
559
+ },
560
+ {
561
+ "text": "Mapped changesetSolution to changesetSolution\n"
562
+ },
563
+ {
564
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
565
+ },
566
+ {
567
+ "text": "Mapped createSolution to createSolution\n"
568
+ },
569
+ {
570
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
571
+ },
572
+ {
573
+ "text": "Mapped exportSolution to exportSolution\n"
574
+ },
575
+ {
576
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
577
+ },
578
+ {
579
+ "text": "Mapped updateSolution to updateSolution\n"
580
+ },
581
+ {
582
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
583
+ },
584
+ {
585
+ "text": "Mapped createRelationship to createRelationship\n"
586
+ },
587
+ {
588
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
589
+ },
590
+ {
591
+ "text": "Mapped deleteTable to deleteTable\n"
592
+ },
593
+ {
594
+ "text": "Mapped getAppTables to getAppTables\n"
595
+ },
596
+ {
597
+ "text": "Mapped getRelationships to getRelationships\n"
598
+ },
599
+ {
600
+ "text": "Mapped getTable to getTable\n"
601
+ },
602
+ {
603
+ "text": "Mapped updateRelationship to updateRelationship\n"
604
+ },
605
+ {
606
+ "text": "Mapped updateTable to updateTable\n"
607
+ },
608
+ {
609
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
610
+ },
611
+ {
612
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
613
+ },
614
+ {
615
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
616
+ },
617
+ {
618
+ "text": "Mapped transferUserToken to transferUserToken\n"
619
+ },
620
+ {
621
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
622
+ },
623
+ {
624
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
625
+ },
626
+ {
627
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
628
+ },
629
+ {
630
+ "text": "Mapped denyUsers to denyUsers\n"
631
+ },
632
+ {
633
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
634
+ },
635
+ {
636
+ "text": "Mapped getUsers to getUsers\n"
637
+ },
638
+ {
639
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
640
+ },
641
+ {
642
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
643
+ },
644
+ {
645
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
646
+ },
647
+ {
648
+ "text": "Mapped undenyUsers to undenyUsers\n"
649
+ },
650
+ {
651
+ "text": "Proxy called getTempTokenDBID with: { dbid: \u001b[32m'buwai2zws'\u001b[39m }\n"
652
+ },
653
+ {
654
+ "text": "Invoking getTempTokenDBID with params: { dbid: \u001b[32m'buwai2zws'\u001b[39m }\n"
655
+ },
656
+ {
657
+ "text": "Calling method with args: [ { dbid: \u001b[32m'buwai2zws'\u001b[39m }, {} ]\n"
658
+ },
659
+ {
660
+ "text": "Raw response from https://api.quickbase.com/v1/auth/temporary/buwai2zws: {\n status: \u001b[33m200\u001b[39m,\n statusText: \u001b[32m''\u001b[39m,\n body: \u001b[32m'{\"temporaryAuthorization\":\"VEtU.OV9idXg3emVyZTVfYjlmM3BrX3E0amRfYV9idXdhaTJ6d3NfYno1OTMyNmJiYXN1NWRjaHVxOXhpYjJxempnemRtOHBzYXBiNzdldXQ5YzlwYmZ5bmM2Z2k4aTlfaXlrbXdkcg==\"}'\u001b[39m\n}\n"
661
+ },
662
+ {
663
+ "text": "Response from getTempTokenDBID: {\n temporaryAuthorization: \u001b[32m'VEtU.OV9idXg3emVyZTVfYjlmM3BrX3E0amRfYV9idXdhaTJ6d3NfYno1OTMyNmJiYXN1NWRjaHVxOXhpYjJxempnemRtOHBzYXBiNzdldXQ5YzlwYmZ5bmM2Z2k4aTlfaXlrbXdkcg=='\u001b[39m\n}\n"
664
+ },
665
+ {
666
+ "text": "Fetched and cached new token for dbid: buwai2zws VEtU.OV9idXg3emVyZTVfYjlmM3BrX3E0amRfYV9idXdhaTJ6d3NfYno1OTMyNmJiYXN1NWRjaHVxOXhpYjJxempnemRtOHBzYXBiNzdldXQ5YzlwYmZ5bmM2Z2k4aTlfaXlrbXdkcg== Expires at: 2025-03-09T15:07:09.131Z\n"
667
+ },
668
+ {
669
+ "text": "Invoking getFields with params: { tableId: \u001b[32m'buwai2zws'\u001b[39m }\n"
670
+ },
671
+ {
672
+ "text": "Calling method with args: [\n { tableId: \u001b[32m'buwai2zws'\u001b[39m },\n {\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emVyZTVfYjlmM3BrX3E0amRfYV9idXdhaTJ6d3NfYno1OTMyNmJiYXN1NWRjaHVxOXhpYjJxempnemRtOHBzYXBiNzdldXQ5YzlwYmZ5bmM2Z2k4aTlfaXlrbXdkcg=='\u001b[39m\n }\n }\n]\n"
673
+ },
674
+ {
675
+ "text": "Fetching https://api.quickbase.com/v1/fields?tableId=buwai2zws with init: {\n method: \u001b[32m'GET'\u001b[39m,\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emVyZTVfYjlmM3BrX3E0amRfYV9idXdhaTJ6d3NfYno1OTMyNmJiYXN1NWRjaHVxOXhpYjJxempnemRtOHBzYXBiNzdldXQ5YzlwYmZ5bmM2Z2k4aTlfaXlrbXdkcg=='\u001b[39m\n },\n body: \u001b[90mundefined\u001b[39m,\n credentials: \u001b[32m'omit'\u001b[39m\n}\n"
676
+ },
677
+ {
678
+ "text": "Raw response from https://api.quickbase.com/v1/fields?tableId=buwai2zws: {\n status: \u001b[33m200\u001b[39m,\n statusText: \u001b[32m'OK'\u001b[39m,\n body: \u001b[32m'[{\"appearsByDefault\":true,\"audited\":false,\"bold\":false,\"doesDataCopy\":true,\"fieldHelp\":\"\",\"fieldType\":\"text\",\"findEnabled\":true,\"id\":6,\"label\":\"Test\",\"mode\":\"\",\"noWrap\":false,\"properties\":{\"allowHTML\":false,\"allowMentions\":false,\"allowNewChoices\":false,\"appendOnly\":false,\"carryChoices\":true,\"defaultValue\":\"\",\"foreignKey\":false,\"formula\":\"\",\"maxLength\":0,\"numLines\":1,\"primaryKey\":false,\"sortAsGiven\":true},\"required\":false,\"unique\":false},{\"appearsByDefault\":false,\"audited\":false,\"bold\":false,\"doesDataCopy\":false,\"fieldHelp\":\"\",\"fieldType\":\"timestamp\",\"findEnabled\":false,\"id\":1,\"label\":\"Date Created\",\"mode\":\"\",\"noWrap\":true,\"properties\":{\"allowNewChoices\":false,\"carryChoices\":true,\"defaultToday\":false,\"defaultValue\":\"\",\"displayDayOfWeek\":false,\"displayMonth\":\"number\",\"displayRelative\":false,\"displayTime\":true,\"displayTimezone\":false,\"foreignKey\":false,\"formula\":\"\",\"primaryKey\":false,\"sortAsGiven\":true},\"required\":false,\"unique\":false},{\"appearsByDefault\":false,\"audited\":false,\"bold\":false,\"doesDataCopy\":false,\"fieldHelp\":\"\",\"fieldType\":\"timestamp\",\"findEnabled\":false,\"id\":2,\"label\":\"Date Modified\",\"mode\":\"\",\"noWrap\":true,\"properties\":{\"allowNewChoices\":false,\"carryChoices\":true,\"defaultToday\":false,\"defaultValue\":\"\",\"displayDayOfWeek\":false,\"displayMonth\":\"number\",\"displayRelative\":false,\"displayTime\":true,\"displayTimezone\":false,\"foreignKey\":false,\"formula\":\"\",\"primaryKey\":false,\"sortAsGiven\":true},\"required\":false,\"unique\":false},{\"appearsByDefault\":false,\"audited\":false,\"bold\":false,\"doesDataCopy\":false,\"fieldHelp\":\"\",\"fieldType\":\"recordid\",\"findEnabled\":false,\"id\":3,\"label\":\"Record ID#\",\"mode\":\"\",\"noWrap\":true,\"properties\":{\"allowNewChoices\":false,\"blankIsZero\":true,\"carryChoices\":true,\"commaStart\":4,\"decimalPlaces\":0,\"defaultValue\":\"\",\"doesAverage\":false,\"doesTotal\":false,\"foreignKey\":false,\"formula\":\"\",\"numberFormat\":0,\"primaryKey\":true,\"sortAsGiven\":true},\"required\":false,\"unique\":true},{\"appearsByDefault\":false,\"audited\":false,\"bold\":false,\"doesDataCopy\":false,\"fieldHelp\":\"\",\"fieldType\":\"user\",\"findEnabled\":true,\"id\":4,\"label\":\"Record Owner\",\"mode\":\"\",\"noWrap\":true,\"properties\":{\"allowNewChoices\":true,\"carryChoices\":true,\"defaultKind\":\"none\",\"defaultValue\":\"\",\"displayUser\":\"fullnamelf\",\"foreignKey\":false,\"formula\":\"\",\"primaryKey\":false,\"sortAsGiven\":true},\"required\":false,\"unique\":false},{\"appearsByDefault\":false,\"audited\":false,\"bold\":false,\"doesDataCopy\":false,\"fieldHelp\":\"\",\"fieldType\":\"user\",\"findEnabled\":true,\"id\":5,\"label\":\"Last Modified By\",\"mode\":\"\",\"noWrap\":true,\"properties\":{\"allowNewChoices\":true,\"carryChoices\":true,\"defaultKind\":\"none\",\"defaultValue\":\"\",\"displayUser\":\"fullnamelf\",\"foreignKey\":false,\"formula\":\"\",\"primaryKey\":false,\"sortAsGiven\":true},\"required\":false,\"unique\":false}]'\u001b[39m\n}\n"
679
+ },
680
+ {
681
+ "text": "Response from getFields: [\n {\n id: \u001b[33m6\u001b[39m,\n label: \u001b[32m'Test'\u001b[39m,\n fieldType: \u001b[32m'text'\u001b[39m,\n noWrap: \u001b[33mfalse\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mtrue\u001b[39m,\n findEnabled: \u001b[33mtrue\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mtrue\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[33m1\u001b[39m,\n maxLength: \u001b[33m0\u001b[39m,\n appendOnly: \u001b[33mfalse\u001b[39m,\n allowHTML: \u001b[33mfalse\u001b[39m,\n allowMentions: \u001b[33mfalse\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mfalse\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m1\u001b[39m,\n label: \u001b[32m'Date Created'\u001b[39m,\n fieldType: \u001b[32m'timestamp'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mfalse\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mfalse\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m2\u001b[39m,\n label: \u001b[32m'Date Modified'\u001b[39m,\n fieldType: \u001b[32m'timestamp'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mfalse\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mfalse\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m3\u001b[39m,\n label: \u001b[32m'Record ID#'\u001b[39m,\n fieldType: \u001b[32m'recordid'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mfalse\u001b[39m,\n unique: \u001b[33mtrue\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mtrue\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mfalse\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m4\u001b[39m,\n label: \u001b[32m'Record Owner'\u001b[39m,\n fieldType: \u001b[32m'user'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mtrue\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mtrue\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m5\u001b[39m,\n label: \u001b[32m'Last Modified By'\u001b[39m,\n fieldType: \u001b[32m'user'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mtrue\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mtrue\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n }\n]\n"
682
+ },
683
+ {
684
+ "text": "getFields response: [\n {\n id: \u001b[33m6\u001b[39m,\n label: \u001b[32m'Test'\u001b[39m,\n fieldType: \u001b[32m'text'\u001b[39m,\n noWrap: \u001b[33mfalse\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mtrue\u001b[39m,\n findEnabled: \u001b[33mtrue\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mtrue\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[33m1\u001b[39m,\n maxLength: \u001b[33m0\u001b[39m,\n appendOnly: \u001b[33mfalse\u001b[39m,\n allowHTML: \u001b[33mfalse\u001b[39m,\n allowMentions: \u001b[33mfalse\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mfalse\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m1\u001b[39m,\n label: \u001b[32m'Date Created'\u001b[39m,\n fieldType: \u001b[32m'timestamp'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mfalse\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mfalse\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m2\u001b[39m,\n label: \u001b[32m'Date Modified'\u001b[39m,\n fieldType: \u001b[32m'timestamp'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mfalse\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mfalse\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m3\u001b[39m,\n label: \u001b[32m'Record ID#'\u001b[39m,\n fieldType: \u001b[32m'recordid'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mfalse\u001b[39m,\n unique: \u001b[33mtrue\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mtrue\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mfalse\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m4\u001b[39m,\n label: \u001b[32m'Record Owner'\u001b[39m,\n fieldType: \u001b[32m'user'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mtrue\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mtrue\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n },\n {\n id: \u001b[33m5\u001b[39m,\n label: \u001b[32m'Last Modified By'\u001b[39m,\n fieldType: \u001b[32m'user'\u001b[39m,\n noWrap: \u001b[33mtrue\u001b[39m,\n bold: \u001b[33mfalse\u001b[39m,\n required: \u001b[33mfalse\u001b[39m,\n appearsByDefault: \u001b[33mfalse\u001b[39m,\n findEnabled: \u001b[33mtrue\u001b[39m,\n unique: \u001b[33mfalse\u001b[39m,\n doesDataCopy: \u001b[33mfalse\u001b[39m,\n fieldHelp: \u001b[32m''\u001b[39m,\n audited: \u001b[33mfalse\u001b[39m,\n properties: {\n primaryKey: \u001b[33mfalse\u001b[39m,\n foreignKey: \u001b[33mfalse\u001b[39m,\n numLines: \u001b[90mundefined\u001b[39m,\n maxLength: \u001b[90mundefined\u001b[39m,\n appendOnly: \u001b[90mundefined\u001b[39m,\n allowHTML: \u001b[90mundefined\u001b[39m,\n allowMentions: \u001b[90mundefined\u001b[39m,\n sortAsGiven: \u001b[33mtrue\u001b[39m,\n carryChoices: \u001b[33mtrue\u001b[39m,\n allowNewChoices: \u001b[33mtrue\u001b[39m,\n formula: \u001b[32m''\u001b[39m,\n defaultValue: \u001b[32m''\u001b[39m\n },\n permissions: \u001b[90mundefined\u001b[39m\n }\n]\n"
685
+ },
686
+ {
687
+ "text": "Proxy called getApp with: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
688
+ },
689
+ {
690
+ "text": "Cache state before fetch for buwai2zpe: [\n [\n \u001b[32m'buwai2zpe'\u001b[39m,\n {\n token: \u001b[32m'VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24='\u001b[39m,\n expiresAt: \u001b[33m1741532827992\u001b[39m\n }\n ],\n [\n \u001b[32m'buwai2zws'\u001b[39m,\n {\n token: \u001b[32m'VEtU.OV9idXg3emVyZTVfYjlmM3BrX3E0amRfYV9idXdhaTJ6d3NfYno1OTMyNmJiYXN1NWRjaHVxOXhpYjJxempnemRtOHBzYXBiNzdldXQ5YzlwYmZ5bmM2Z2k4aTlfaXlrbXdkcg=='\u001b[39m,\n expiresAt: \u001b[33m1741532829131\u001b[39m\n }\n ]\n]\n"
691
+ },
692
+ {
693
+ "text": "Reusing cached token for dbid: buwai2zpe VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24=\n"
694
+ },
695
+ {
696
+ "text": "Invoking getApp with params: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
697
+ },
698
+ {
699
+ "text": "Calling method with args: [\n { appId: \u001b[32m'buwai2zpe'\u001b[39m },\n {\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24='\u001b[39m\n }\n }\n]\n"
700
+ },
701
+ {
702
+ "text": "Fetching https://api.quickbase.com/v1/apps/buwai2zpe with init: {\n method: \u001b[32m'GET'\u001b[39m,\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emVxYWtfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfajZ6ZHc4Y3c1YWdkNWJwajQ3YXJkNm16OHV1YmY5djhzc2Q5MmVjbmlidzV4bnVkdnFreXByX2l5a213Y24='\u001b[39m\n },\n body: \u001b[90mundefined\u001b[39m,\n credentials: \u001b[32m'omit'\u001b[39m\n}\n"
703
+ },
704
+ {
705
+ "text": "Raw response from https://api.quickbase.com/v1/apps/buwai2zpe: {\n status: \u001b[33m200\u001b[39m,\n statusText: \u001b[32m'OK'\u001b[39m,\n body: \u001b[32m'{\"created\":\"2025-02-13T18:22:33Z\",\"dateFormat\":\"MM-DD-YYYY\",\"description\":\"\",\"hasEveryoneOnTheInternet\":false,\"id\":\"buwai2zpe\",\"memoryInfo\":{\"estMemory\":0.0,\"estMemoryInclDependentApps\":0.0},\"name\":\"qb-copy\",\"securityProperties\":{\"allowClone\":false,\"allowExport\":true,\"enableAppTokens\":true,\"hideFromPublic\":false,\"mustBeRealmApproved\":false,\"useIPFilter\":false},\"timeZone\":\"(UTC-08:00) Pacific Time (US & Canada)\",\"updated\":\"2025-03-04T04:25:51Z\"}'\u001b[39m\n}\n"
706
+ },
707
+ {
708
+ "text": "Response from getApp: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
709
+ },
710
+ {
711
+ "text": "Second getApp response: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
712
+ }
713
+ ],
714
+ "stderr": [],
715
+ "retry": 0,
716
+ "startTime": "2025-03-09T15:02:06.909Z",
717
+ "attachments": []
718
+ }
719
+ ],
720
+ "status": "expected"
721
+ }
722
+ ],
723
+ "id": "d9cb2cca5cb03c0bcd89-8f1f64d2351d17551df9",
724
+ "file": "qb/auth/cacheSwitching.test.ts",
725
+ "line": 64,
726
+ "column": 3
727
+ }
728
+ ]
729
+ }
730
+ ]
731
+ },
732
+ {
733
+ "title": "qb/auth/getAppWithUserToken.test.ts",
734
+ "file": "qb/auth/getAppWithUserToken.test.ts",
735
+ "column": 0,
736
+ "line": 0,
737
+ "specs": [],
738
+ "suites": [
739
+ {
740
+ "title": "QuickbaseClient Integration - getApp with User Token",
741
+ "file": "qb/auth/getAppWithUserToken.test.ts",
742
+ "line": 56,
743
+ "column": 6,
744
+ "specs": [
745
+ {
746
+ "title": "uses user token for getApp in browser",
747
+ "ok": true,
748
+ "tags": [],
749
+ "tests": [
750
+ {
751
+ "timeout": 600000,
752
+ "annotations": [],
753
+ "expectedStatus": "passed",
754
+ "projectId": "chromium",
755
+ "projectName": "chromium",
756
+ "results": [
757
+ {
758
+ "workerIndex": 1,
759
+ "parallelIndex": 1,
760
+ "status": "passed",
761
+ "duration": 13101,
762
+ "errors": [],
763
+ "stdout": [
764
+ {
765
+ "text": "Logging in to QuickBase\n"
766
+ },
767
+ {
768
+ "text": "Signed In to QuickBase.\n"
769
+ },
770
+ {
771
+ "text": "Post-login URL after app navigation: https://builderprogram-dbradford6815.quickbase.com/nav/app/buwai2zpe/action/appoverview\n"
772
+ },
773
+ {
774
+ "text": "Mapped copyApp to copyApp\n"
775
+ },
776
+ {
777
+ "text": "Mapped createApp to createApp\n"
778
+ },
779
+ {
780
+ "text": "Mapped getApp to getApp\n"
781
+ },
782
+ {
783
+ "text": "Mapped getAppEvents to getAppEvents\n"
784
+ },
785
+ {
786
+ "text": "Mapped audit to audit\n"
787
+ },
788
+ {
789
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
790
+ },
791
+ {
792
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
793
+ },
794
+ {
795
+ "text": "Mapped generateDocument to generateDocument\n"
796
+ },
797
+ {
798
+ "text": "Mapped getField to getField\n"
799
+ },
800
+ {
801
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
802
+ },
803
+ {
804
+ "text": "Mapped getFields to getFields\n"
805
+ },
806
+ {
807
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
808
+ },
809
+ {
810
+ "text": "Mapped updateField to updateField\n"
811
+ },
812
+ {
813
+ "text": "Mapped deleteFile to deleteFile\n"
814
+ },
815
+ {
816
+ "text": "Mapped downloadFile to downloadFile\n"
817
+ },
818
+ {
819
+ "text": "Mapped runFormula to runFormula\n"
820
+ },
821
+ {
822
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
823
+ },
824
+ {
825
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
826
+ },
827
+ {
828
+ "text": "Mapped deleteRecords to deleteRecords\n"
829
+ },
830
+ {
831
+ "text": "Mapped upsert to upsert\n"
832
+ },
833
+ {
834
+ "text": "Mapped upsertRecords to upsertRecords\n"
835
+ },
836
+ {
837
+ "text": "Mapped getReport to getReport\n"
838
+ },
839
+ {
840
+ "text": "Mapped getTableReports to getTableReports\n"
841
+ },
842
+ {
843
+ "text": "Mapped runReport to runReport\n"
844
+ },
845
+ {
846
+ "text": "Mapped changesetSolution to changesetSolution\n"
847
+ },
848
+ {
849
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
850
+ },
851
+ {
852
+ "text": "Mapped createSolution to createSolution\n"
853
+ },
854
+ {
855
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
856
+ },
857
+ {
858
+ "text": "Mapped exportSolution to exportSolution\n"
859
+ },
860
+ {
861
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
862
+ },
863
+ {
864
+ "text": "Mapped updateSolution to updateSolution\n"
865
+ },
866
+ {
867
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
868
+ },
869
+ {
870
+ "text": "Mapped createRelationship to createRelationship\n"
871
+ },
872
+ {
873
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
874
+ },
875
+ {
876
+ "text": "Mapped deleteTable to deleteTable\n"
877
+ },
878
+ {
879
+ "text": "Mapped getAppTables to getAppTables\n"
880
+ },
881
+ {
882
+ "text": "Mapped getRelationships to getRelationships\n"
883
+ },
884
+ {
885
+ "text": "Mapped getTable to getTable\n"
886
+ },
887
+ {
888
+ "text": "Mapped updateRelationship to updateRelationship\n"
889
+ },
890
+ {
891
+ "text": "Mapped updateTable to updateTable\n"
892
+ },
893
+ {
894
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
895
+ },
896
+ {
897
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
898
+ },
899
+ {
900
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
901
+ },
902
+ {
903
+ "text": "Mapped transferUserToken to transferUserToken\n"
904
+ },
905
+ {
906
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
907
+ },
908
+ {
909
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
910
+ },
911
+ {
912
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
913
+ },
914
+ {
915
+ "text": "Mapped denyUsers to denyUsers\n"
916
+ },
917
+ {
918
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
919
+ },
920
+ {
921
+ "text": "Mapped getUsers to getUsers\n"
922
+ },
923
+ {
924
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
925
+ },
926
+ {
927
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
928
+ },
929
+ {
930
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
931
+ },
932
+ {
933
+ "text": "Mapped undenyUsers to undenyUsers\n"
934
+ },
935
+ {
936
+ "text": "Proxy called getApp with: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
937
+ },
938
+ {
939
+ "text": "Invoking getApp with params: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
940
+ },
941
+ {
942
+ "text": "Calling method with args: [ { appId: \u001b[32m'buwai2zpe'\u001b[39m }, {} ]\n"
943
+ },
944
+ {
945
+ "text": "Fetching https://api.quickbase.com/v1/apps/buwai2zpe with init: {\n method: \u001b[32m'GET'\u001b[39m,\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-USER-TOKEN b9f3pk_q4jd_0_b4qu5eebyvuix3xs57ysd7zn3'\u001b[39m\n },\n body: \u001b[90mundefined\u001b[39m,\n credentials: \u001b[32m'omit'\u001b[39m\n}\n"
946
+ },
947
+ {
948
+ "text": "Raw response from https://api.quickbase.com/v1/apps/buwai2zpe: {\n status: \u001b[33m200\u001b[39m,\n statusText: \u001b[32m''\u001b[39m,\n body: \u001b[32m'{\"created\":\"2025-02-13T18:22:33Z\",\"dateFormat\":\"MM-DD-YYYY\",\"description\":\"\",\"hasEveryoneOnTheInternet\":false,\"id\":\"buwai2zpe\",\"memoryInfo\":{\"estMemory\":0.0,\"estMemoryInclDependentApps\":0.0},\"name\":\"qb-copy\",\"securityProperties\":{\"allowClone\":false,\"allowExport\":true,\"enableAppTokens\":true,\"hideFromPublic\":false,\"mustBeRealmApproved\":false,\"useIPFilter\":false},\"timeZone\":\"(UTC-08:00) Pacific Time (US & Canada)\",\"updated\":\"2025-03-04T04:25:51Z\"}'\u001b[39m\n}\n"
949
+ },
950
+ {
951
+ "text": "Response from getApp: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
952
+ },
953
+ {
954
+ "text": "App response using user token: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
955
+ }
956
+ ],
957
+ "stderr": [],
958
+ "retry": 0,
959
+ "startTime": "2025-03-09T15:02:06.982Z",
960
+ "attachments": []
961
+ }
962
+ ],
963
+ "status": "expected"
964
+ }
965
+ ],
966
+ "id": "95cc4dd43cb1eb804aca-bbbed45ba12381f1d296",
967
+ "file": "qb/auth/getAppWithUserToken.test.ts",
968
+ "line": 57,
969
+ "column": 3
970
+ }
971
+ ]
972
+ }
973
+ ]
974
+ },
975
+ {
976
+ "title": "qb/auth/getTempToken.test.ts",
977
+ "file": "qb/auth/getTempToken.test.ts",
978
+ "column": 0,
979
+ "line": 0,
980
+ "specs": [],
981
+ "suites": [
982
+ {
983
+ "title": "QuickbaseClient Integration - getApp with Temp Tokens",
984
+ "file": "qb/auth/getTempToken.test.ts",
985
+ "line": 57,
986
+ "column": 6,
987
+ "specs": [
988
+ {
989
+ "title": "uses temp tokens automatically for getApp in browser",
990
+ "ok": true,
991
+ "tags": [],
992
+ "tests": [
993
+ {
994
+ "timeout": 600000,
995
+ "annotations": [],
996
+ "expectedStatus": "passed",
997
+ "projectId": "chromium",
998
+ "projectName": "chromium",
999
+ "results": [
1000
+ {
1001
+ "workerIndex": 2,
1002
+ "parallelIndex": 2,
1003
+ "status": "passed",
1004
+ "duration": 10816,
1005
+ "errors": [],
1006
+ "stdout": [
1007
+ {
1008
+ "text": "Logging in to QuickBase\n"
1009
+ },
1010
+ {
1011
+ "text": "Signed In to QuickBase.\n"
1012
+ },
1013
+ {
1014
+ "text": "Post-login URL after app navigation: https://builderprogram-dbradford6815.quickbase.com/nav/app/buwai2zpe/action/appoverview\n"
1015
+ },
1016
+ {
1017
+ "text": "Mapped copyApp to copyApp\n"
1018
+ },
1019
+ {
1020
+ "text": "Mapped createApp to createApp\n"
1021
+ },
1022
+ {
1023
+ "text": "Mapped getApp to getApp\n"
1024
+ },
1025
+ {
1026
+ "text": "Mapped getAppEvents to getAppEvents\n"
1027
+ },
1028
+ {
1029
+ "text": "Mapped audit to audit\n"
1030
+ },
1031
+ {
1032
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
1033
+ },
1034
+ {
1035
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
1036
+ },
1037
+ {
1038
+ "text": "Mapped generateDocument to generateDocument\n"
1039
+ },
1040
+ {
1041
+ "text": "Mapped getField to getField\n"
1042
+ },
1043
+ {
1044
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
1045
+ },
1046
+ {
1047
+ "text": "Mapped getFields to getFields\n"
1048
+ },
1049
+ {
1050
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
1051
+ },
1052
+ {
1053
+ "text": "Mapped updateField to updateField\n"
1054
+ },
1055
+ {
1056
+ "text": "Mapped deleteFile to deleteFile\n"
1057
+ },
1058
+ {
1059
+ "text": "Mapped downloadFile to downloadFile\n"
1060
+ },
1061
+ {
1062
+ "text": "Mapped runFormula to runFormula\n"
1063
+ },
1064
+ {
1065
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
1066
+ },
1067
+ {
1068
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
1069
+ },
1070
+ {
1071
+ "text": "Mapped deleteRecords to deleteRecords\n"
1072
+ },
1073
+ {
1074
+ "text": "Mapped upsert to upsert\n"
1075
+ },
1076
+ {
1077
+ "text": "Mapped upsertRecords to upsertRecords\n"
1078
+ },
1079
+ {
1080
+ "text": "Mapped getReport to getReport\n"
1081
+ },
1082
+ {
1083
+ "text": "Mapped getTableReports to getTableReports\n"
1084
+ },
1085
+ {
1086
+ "text": "Mapped runReport to runReport\n"
1087
+ },
1088
+ {
1089
+ "text": "Mapped changesetSolution to changesetSolution\n"
1090
+ },
1091
+ {
1092
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
1093
+ },
1094
+ {
1095
+ "text": "Mapped createSolution to createSolution\n"
1096
+ },
1097
+ {
1098
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
1099
+ },
1100
+ {
1101
+ "text": "Mapped exportSolution to exportSolution\n"
1102
+ },
1103
+ {
1104
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
1105
+ },
1106
+ {
1107
+ "text": "Mapped updateSolution to updateSolution\n"
1108
+ },
1109
+ {
1110
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
1111
+ },
1112
+ {
1113
+ "text": "Mapped createRelationship to createRelationship\n"
1114
+ },
1115
+ {
1116
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
1117
+ },
1118
+ {
1119
+ "text": "Mapped deleteTable to deleteTable\n"
1120
+ },
1121
+ {
1122
+ "text": "Mapped getAppTables to getAppTables\n"
1123
+ },
1124
+ {
1125
+ "text": "Mapped getRelationships to getRelationships\n"
1126
+ },
1127
+ {
1128
+ "text": "Mapped getTable to getTable\n"
1129
+ },
1130
+ {
1131
+ "text": "Mapped updateRelationship to updateRelationship\n"
1132
+ },
1133
+ {
1134
+ "text": "Mapped updateTable to updateTable\n"
1135
+ },
1136
+ {
1137
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
1138
+ },
1139
+ {
1140
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
1141
+ },
1142
+ {
1143
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
1144
+ },
1145
+ {
1146
+ "text": "Mapped transferUserToken to transferUserToken\n"
1147
+ },
1148
+ {
1149
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
1150
+ },
1151
+ {
1152
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
1153
+ },
1154
+ {
1155
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
1156
+ },
1157
+ {
1158
+ "text": "Mapped denyUsers to denyUsers\n"
1159
+ },
1160
+ {
1161
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
1162
+ },
1163
+ {
1164
+ "text": "Mapped getUsers to getUsers\n"
1165
+ },
1166
+ {
1167
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
1168
+ },
1169
+ {
1170
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
1171
+ },
1172
+ {
1173
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
1174
+ },
1175
+ {
1176
+ "text": "Mapped undenyUsers to undenyUsers\n"
1177
+ },
1178
+ {
1179
+ "text": "Proxy called getApp with: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1180
+ },
1181
+ {
1182
+ "text": "Cache state before fetch for buwai2zpe: []\n"
1183
+ },
1184
+ {
1185
+ "text": "Mapped copyApp to copyApp\n"
1186
+ },
1187
+ {
1188
+ "text": "Mapped createApp to createApp\n"
1189
+ },
1190
+ {
1191
+ "text": "Mapped getApp to getApp\n"
1192
+ },
1193
+ {
1194
+ "text": "Mapped getAppEvents to getAppEvents\n"
1195
+ },
1196
+ {
1197
+ "text": "Mapped audit to audit\n"
1198
+ },
1199
+ {
1200
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
1201
+ },
1202
+ {
1203
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
1204
+ },
1205
+ {
1206
+ "text": "Mapped generateDocument to generateDocument\n"
1207
+ },
1208
+ {
1209
+ "text": "Mapped getField to getField\n"
1210
+ },
1211
+ {
1212
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
1213
+ },
1214
+ {
1215
+ "text": "Mapped getFields to getFields\n"
1216
+ },
1217
+ {
1218
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
1219
+ },
1220
+ {
1221
+ "text": "Mapped updateField to updateField\n"
1222
+ },
1223
+ {
1224
+ "text": "Mapped deleteFile to deleteFile\n"
1225
+ },
1226
+ {
1227
+ "text": "Mapped downloadFile to downloadFile\n"
1228
+ },
1229
+ {
1230
+ "text": "Mapped runFormula to runFormula\n"
1231
+ },
1232
+ {
1233
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
1234
+ },
1235
+ {
1236
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
1237
+ },
1238
+ {
1239
+ "text": "Mapped deleteRecords to deleteRecords\n"
1240
+ },
1241
+ {
1242
+ "text": "Mapped upsert to upsert\n"
1243
+ },
1244
+ {
1245
+ "text": "Mapped upsertRecords to upsertRecords\n"
1246
+ },
1247
+ {
1248
+ "text": "Mapped getReport to getReport\n"
1249
+ },
1250
+ {
1251
+ "text": "Mapped getTableReports to getTableReports\n"
1252
+ },
1253
+ {
1254
+ "text": "Mapped runReport to runReport\n"
1255
+ },
1256
+ {
1257
+ "text": "Mapped changesetSolution to changesetSolution\n"
1258
+ },
1259
+ {
1260
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
1261
+ },
1262
+ {
1263
+ "text": "Mapped createSolution to createSolution\n"
1264
+ },
1265
+ {
1266
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
1267
+ },
1268
+ {
1269
+ "text": "Mapped exportSolution to exportSolution\n"
1270
+ },
1271
+ {
1272
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
1273
+ },
1274
+ {
1275
+ "text": "Mapped updateSolution to updateSolution\n"
1276
+ },
1277
+ {
1278
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
1279
+ },
1280
+ {
1281
+ "text": "Mapped createRelationship to createRelationship\n"
1282
+ },
1283
+ {
1284
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
1285
+ },
1286
+ {
1287
+ "text": "Mapped deleteTable to deleteTable\n"
1288
+ },
1289
+ {
1290
+ "text": "Mapped getAppTables to getAppTables\n"
1291
+ },
1292
+ {
1293
+ "text": "Mapped getRelationships to getRelationships\n"
1294
+ },
1295
+ {
1296
+ "text": "Mapped getTable to getTable\n"
1297
+ },
1298
+ {
1299
+ "text": "Mapped updateRelationship to updateRelationship\n"
1300
+ },
1301
+ {
1302
+ "text": "Mapped updateTable to updateTable\n"
1303
+ },
1304
+ {
1305
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
1306
+ },
1307
+ {
1308
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
1309
+ },
1310
+ {
1311
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
1312
+ },
1313
+ {
1314
+ "text": "Mapped transferUserToken to transferUserToken\n"
1315
+ },
1316
+ {
1317
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
1318
+ },
1319
+ {
1320
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
1321
+ },
1322
+ {
1323
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
1324
+ },
1325
+ {
1326
+ "text": "Mapped denyUsers to denyUsers\n"
1327
+ },
1328
+ {
1329
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
1330
+ },
1331
+ {
1332
+ "text": "Mapped getUsers to getUsers\n"
1333
+ },
1334
+ {
1335
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
1336
+ },
1337
+ {
1338
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
1339
+ },
1340
+ {
1341
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
1342
+ },
1343
+ {
1344
+ "text": "Mapped undenyUsers to undenyUsers\n"
1345
+ },
1346
+ {
1347
+ "text": "Proxy called getTempTokenDBID with: { dbid: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1348
+ },
1349
+ {
1350
+ "text": "Invoking getTempTokenDBID with params: { dbid: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1351
+ },
1352
+ {
1353
+ "text": "Calling method with args: [ { dbid: \u001b[32m'buwai2zpe'\u001b[39m }, {} ]\n"
1354
+ },
1355
+ {
1356
+ "text": "Raw response from https://api.quickbase.com/v1/auth/temporary/buwai2zpe: {\n status: \u001b[33m200\u001b[39m,\n statusText: \u001b[32m''\u001b[39m,\n body: \u001b[32m'{\"temporaryAuthorization\":\"VEtU.OV9idXg3emVwdXRfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfdnNpYzdxZDdiNWZmYWQ1YjlxZ2FkZmY3bnpkYzI5ZGVjaGRzd2Z0eWZjcGhmbmQ1ZDZxYXhzYl9peWttd2Nj\"}'\u001b[39m\n}\n"
1357
+ },
1358
+ {
1359
+ "text": "Response from getTempTokenDBID: {\n temporaryAuthorization: \u001b[32m'VEtU.OV9idXg3emVwdXRfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfdnNpYzdxZDdiNWZmYWQ1YjlxZ2FkZmY3bnpkYzI5ZGVjaGRzd2Z0eWZjcGhmbmQ1ZDZxYXhzYl9peWttd2Nj'\u001b[39m\n}\n"
1360
+ },
1361
+ {
1362
+ "text": "Fetched and cached new token for dbid: buwai2zpe VEtU.OV9idXg3emVwdXRfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfdnNpYzdxZDdiNWZmYWQ1YjlxZ2FkZmY3bnpkYzI5ZGVjaGRzd2Z0eWZjcGhmbmQ1ZDZxYXhzYl9peWttd2Nj Expires at: 2025-03-09T15:07:07.553Z\n"
1363
+ },
1364
+ {
1365
+ "text": "Invoking getApp with params: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1366
+ },
1367
+ {
1368
+ "text": "Calling method with args: [\n { appId: \u001b[32m'buwai2zpe'\u001b[39m },\n {\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emVwdXRfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfdnNpYzdxZDdiNWZmYWQ1YjlxZ2FkZmY3bnpkYzI5ZGVjaGRzd2Z0eWZjcGhmbmQ1ZDZxYXhzYl9peWttd2Nj'\u001b[39m\n }\n }\n]\n"
1369
+ },
1370
+ {
1371
+ "text": "Fetching https://api.quickbase.com/v1/apps/buwai2zpe with init: {\n method: \u001b[32m'GET'\u001b[39m,\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emVwdXRfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfdnNpYzdxZDdiNWZmYWQ1YjlxZ2FkZmY3bnpkYzI5ZGVjaGRzd2Z0eWZjcGhmbmQ1ZDZxYXhzYl9peWttd2Nj'\u001b[39m\n },\n body: \u001b[90mundefined\u001b[39m,\n credentials: \u001b[32m'omit'\u001b[39m\n}\n"
1372
+ },
1373
+ {
1374
+ "text": "Raw response from https://api.quickbase.com/v1/apps/buwai2zpe: {\n status: \u001b[33m200\u001b[39m,\n statusText: \u001b[32m'OK'\u001b[39m,\n body: \u001b[32m'{\"created\":\"2025-02-13T18:22:33Z\",\"dateFormat\":\"MM-DD-YYYY\",\"description\":\"\",\"hasEveryoneOnTheInternet\":false,\"id\":\"buwai2zpe\",\"memoryInfo\":{\"estMemory\":0.0,\"estMemoryInclDependentApps\":0.0},\"name\":\"qb-copy\",\"securityProperties\":{\"allowClone\":false,\"allowExport\":true,\"enableAppTokens\":true,\"hideFromPublic\":false,\"mustBeRealmApproved\":false,\"useIPFilter\":false},\"timeZone\":\"(UTC-08:00) Pacific Time (US & Canada)\",\"updated\":\"2025-03-04T04:25:51Z\"}'\u001b[39m\n}\n"
1375
+ },
1376
+ {
1377
+ "text": "Response from getApp: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
1378
+ },
1379
+ {
1380
+ "text": "App response using auto-fetched temp token: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
1381
+ }
1382
+ ],
1383
+ "stderr": [],
1384
+ "retry": 0,
1385
+ "startTime": "2025-03-09T15:02:07.093Z",
1386
+ "attachments": []
1387
+ }
1388
+ ],
1389
+ "status": "expected"
1390
+ }
1391
+ ],
1392
+ "id": "a701d3a6657df231384c-1f340fa9d9997340cef2",
1393
+ "file": "qb/auth/getTempToken.test.ts",
1394
+ "line": 58,
1395
+ "column": 3
1396
+ }
1397
+ ]
1398
+ }
1399
+ ]
1400
+ },
1401
+ {
1402
+ "title": "qb/auth/tokenRenewal.test.ts",
1403
+ "file": "qb/auth/tokenRenewal.test.ts",
1404
+ "column": 0,
1405
+ "line": 0,
1406
+ "specs": [],
1407
+ "suites": [
1408
+ {
1409
+ "title": "QuickbaseClient Integration - Temp Token Renewal",
1410
+ "file": "qb/auth/tokenRenewal.test.ts",
1411
+ "line": 30,
1412
+ "column": 6,
1413
+ "specs": [
1414
+ {
1415
+ "title": "renews temp token after 5 minutes with getApp → wait → getApp sequence",
1416
+ "ok": true,
1417
+ "tags": [],
1418
+ "tests": [
1419
+ {
1420
+ "timeout": 600000,
1421
+ "annotations": [],
1422
+ "expectedStatus": "passed",
1423
+ "projectId": "chromium",
1424
+ "projectName": "chromium",
1425
+ "results": [
1426
+ {
1427
+ "workerIndex": 3,
1428
+ "parallelIndex": 3,
1429
+ "status": "passed",
1430
+ "duration": 317745,
1431
+ "errors": [],
1432
+ "stdout": [
1433
+ {
1434
+ "text": "Logging in to QuickBase\n"
1435
+ },
1436
+ {
1437
+ "text": "Signed In to QuickBase.\n"
1438
+ },
1439
+ {
1440
+ "text": "Navigated to app URL: https://builderprogram-dbradford6815.quickbase.com/nav/app/buwai2zpe/action/appoverview\n"
1441
+ },
1442
+ {
1443
+ "text": "Mapped copyApp to copyApp\n"
1444
+ },
1445
+ {
1446
+ "text": "Mapped createApp to createApp\n"
1447
+ },
1448
+ {
1449
+ "text": "Mapped getApp to getApp\n"
1450
+ },
1451
+ {
1452
+ "text": "Mapped getAppEvents to getAppEvents\n"
1453
+ },
1454
+ {
1455
+ "text": "Mapped audit to audit\n"
1456
+ },
1457
+ {
1458
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
1459
+ },
1460
+ {
1461
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
1462
+ },
1463
+ {
1464
+ "text": "Mapped generateDocument to generateDocument\n"
1465
+ },
1466
+ {
1467
+ "text": "Mapped getField to getField\n"
1468
+ },
1469
+ {
1470
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
1471
+ },
1472
+ {
1473
+ "text": "Mapped getFields to getFields\n"
1474
+ },
1475
+ {
1476
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
1477
+ },
1478
+ {
1479
+ "text": "Mapped updateField to updateField\n"
1480
+ },
1481
+ {
1482
+ "text": "Mapped deleteFile to deleteFile\n"
1483
+ },
1484
+ {
1485
+ "text": "Mapped downloadFile to downloadFile\n"
1486
+ },
1487
+ {
1488
+ "text": "Mapped runFormula to runFormula\n"
1489
+ },
1490
+ {
1491
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
1492
+ },
1493
+ {
1494
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
1495
+ },
1496
+ {
1497
+ "text": "Mapped deleteRecords to deleteRecords\n"
1498
+ },
1499
+ {
1500
+ "text": "Mapped upsert to upsert\n"
1501
+ },
1502
+ {
1503
+ "text": "Mapped upsertRecords to upsertRecords\n"
1504
+ },
1505
+ {
1506
+ "text": "Mapped getReport to getReport\n"
1507
+ },
1508
+ {
1509
+ "text": "Mapped getTableReports to getTableReports\n"
1510
+ },
1511
+ {
1512
+ "text": "Mapped runReport to runReport\n"
1513
+ },
1514
+ {
1515
+ "text": "Mapped changesetSolution to changesetSolution\n"
1516
+ },
1517
+ {
1518
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
1519
+ },
1520
+ {
1521
+ "text": "Mapped createSolution to createSolution\n"
1522
+ },
1523
+ {
1524
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
1525
+ },
1526
+ {
1527
+ "text": "Mapped exportSolution to exportSolution\n"
1528
+ },
1529
+ {
1530
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
1531
+ },
1532
+ {
1533
+ "text": "Mapped updateSolution to updateSolution\n"
1534
+ },
1535
+ {
1536
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
1537
+ },
1538
+ {
1539
+ "text": "Mapped createRelationship to createRelationship\n"
1540
+ },
1541
+ {
1542
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
1543
+ },
1544
+ {
1545
+ "text": "Mapped deleteTable to deleteTable\n"
1546
+ },
1547
+ {
1548
+ "text": "Mapped getAppTables to getAppTables\n"
1549
+ },
1550
+ {
1551
+ "text": "Mapped getRelationships to getRelationships\n"
1552
+ },
1553
+ {
1554
+ "text": "Mapped getTable to getTable\n"
1555
+ },
1556
+ {
1557
+ "text": "Mapped updateRelationship to updateRelationship\n"
1558
+ },
1559
+ {
1560
+ "text": "Mapped updateTable to updateTable\n"
1561
+ },
1562
+ {
1563
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
1564
+ },
1565
+ {
1566
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
1567
+ },
1568
+ {
1569
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
1570
+ },
1571
+ {
1572
+ "text": "Mapped transferUserToken to transferUserToken\n"
1573
+ },
1574
+ {
1575
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
1576
+ },
1577
+ {
1578
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
1579
+ },
1580
+ {
1581
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
1582
+ },
1583
+ {
1584
+ "text": "Mapped denyUsers to denyUsers\n"
1585
+ },
1586
+ {
1587
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
1588
+ },
1589
+ {
1590
+ "text": "Mapped getUsers to getUsers\n"
1591
+ },
1592
+ {
1593
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
1594
+ },
1595
+ {
1596
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
1597
+ },
1598
+ {
1599
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
1600
+ },
1601
+ {
1602
+ "text": "Mapped undenyUsers to undenyUsers\n"
1603
+ },
1604
+ {
1605
+ "text": "Checking session state before getApp...\n"
1606
+ },
1607
+ {
1608
+ "text": "Session cookie present: \u001b[33mtrue\u001b[39m Cookies: [\n {\n name: \u001b[32m'browserCharset'\u001b[39m,\n value: \u001b[32m'UTF-8'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/nav/app/buwai2zpe/action'\u001b[39m,\n expires: \u001b[33m1742137335\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'UUID'\u001b[39m,\n value: \u001b[32m'4caaf526-94a0-40ae-ba0b-a9eaef52aead'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/nav/app/buwai2zpe/action'\u001b[39m,\n expires: \u001b[33m1744124536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'browserCharset'\u001b[39m,\n value: \u001b[32m'UTF-8'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/nav/main/action'\u001b[39m,\n expires: \u001b[33m1742137329\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'UUID'\u001b[39m,\n value: \u001b[32m'804015c2-a9ca-4598-be53-73b6e27fddd5'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/nav/main/action'\u001b[39m,\n expires: \u001b[33m1744124529\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'commonVars'\u001b[39m,\n value: \u001b[32m'~qlb=v2~'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/db/'\u001b[39m,\n expires: \u001b[33m1750172535.349825\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'browserCharset'\u001b[39m,\n value: \u001b[32m'UTF-8'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/db'\u001b[39m,\n expires: \u001b[33m1742137327\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'UUID'\u001b[39m,\n value: \u001b[32m'df74c468-d8c7-4c3f-a161-80ddf3767b8e'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/db'\u001b[39m,\n expires: \u001b[33m1744124528\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'ptest'\u001b[39m,\n value: \u001b[32m'1741532527274'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1776092527.281472\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'stest'\u001b[39m,\n value: \u001b[32m'1741532527274'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'shouldInitializeMetrics'\u001b[39m,\n value: \u001b[32m'true'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'cf_clearance'\u001b[39m,\n value: \u001b[32m'actDbK9QMA2pAmlOisrCzTmGLrua9pXtKlRQqVXgVoI-1741532528-1.2.1.1-x56uLz1ThPV1cd6tyj3RcdG45VWNPbFlMhWUZ8BbrV9sBFWDHL2YMPOt1qsA.vktzrCw3.0mQexBtO1XSOJ8KmoMFInDIN3WHEd4HUe9Jl3kXp.OrM46.Gmm7syRFByIWwJSRTT7G5Ub0tou6A8dA6BUb9cAnriwWuoqyLC94d_nqIczlp3Xlxwa3JWgdBqXUTvZjarRT1r3ICvXhHkkED0wHcmS4K4G25HmoJmQq8R88WlGNJcUq8V5BvpM3u5qUizteu82Z_WQMovSRh94PIutMdV2mv.UgVvo8vujJMRzbp84kkMD7Yx6hptzToVxF6H7LOOlIfg1QToiaVfiR8b5J9n1NejRrGuJnqqQ.Zls1IZ_dKbZzPwTrWVNRt8U4VACtZh1r2ZelfmKbWuD0xEHU7PkhyZDnPgJQJjhGjo'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1773068528.427527\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'None'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_visitorId.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m''\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_accountId.3719929843'\u001b[39m,\n value: \u001b[32m'822137'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_meta.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m''\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_oldVisitorId.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m''\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'TICKET_builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n value: \u001b[32m'9_bux9abmrb_b9f3pk_q4jd_a_-b_drk4zebc4u68ezcb5y6u9b49wcr9dk4hd74dcab8std2pstndbdkkhnz_iykmv7d'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'TICKET'\u001b[39m,\n value: \u001b[32m'9_bux9abmrb_b9f3pk_q4jd_a_-b_drk4zebc4u68ezcb5y6u9b49wcr9dk4hd74dcab8std2pstndbdkkhnz_iykmv7d'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'lrealm'\u001b[39m,\n value: \u001b[32m'q4jd'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1744124528.646739\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_guides_blocked.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m'0'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1741546928\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'luid'\u001b[39m,\n value: \u001b[32m'66250154.nvgc'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1776092528.705531\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'confmsg'\u001b[39m,\n value: \u001b[32m''\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_visitorId.3719929843'\u001b[39m,\n value: \u001b[32m'66250154%3Aquickbase.com'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_oldVisitorId.3719929843'\u001b[39m,\n value: \u001b[32m'_PENDO_T_CpXsVSQPFqI'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172531\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_feedback_notification_count.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m'0'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'responsiveWindowSizeObjectCookie'\u001b[39m,\n value: \u001b[32m'{%22small%22:false%2C%22xSmall%22:false%2C%22xxSmall%22:false}'\u001b[39m,\n domain: \u001b[32m'.builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1741536136\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mfalse\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_lastStepAdvanced.3719929843'\u001b[39m,\n value: \u001b[32m'%5B%7B%22tabId%22%3A%22ISaqBJvX7tJapc9s%22%2C%22guideId%22%3A%22IVthd3ywe-KeAjfWu8DLGO1ym58%22%2C%22guideStepId%22%3A%22NLy5E8v8VkVnoiE5zr0AUuNbmh0%22%2C%22time%22%3A1741532532264%2C%22state%22%3A%22active%22%2C%22seenReason%22%3A%22auto%22%2C%22visitorId%22%3A%2266250154%3Aquickbase.com%22%7D%5D'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1741532542\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'sbIID'\u001b[39m,\n value: \u001b[32m'e7fd2bd8-1b3c-95e3-a1f9-71e4625527fb'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo___sg__.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m'%7B%22visitormetadata%22%3A%7B%22agent__qbancestorappid%22%3A%22none%22%2C%22agent__qbcurrentappid%22%3A%22buwai2zpe%22%2C%22agent__qbiscurrentappadmin%22%3Atrue%2C%22agent__qbisintrial%22%3Afalse%7D%7D'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_feedback_ping_sent.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m'%7B%22jwt%22%3A%22eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhY2NvdW50Ijp7ImlkIjoiODIyMTM3In0sIm5vbmNlIjoiM2EwMGVkMjJmMDQ5N2Q1NGNjYjhlMDZkOGNlMDFiYjQiLCJ2aXNpdG9yIjp7ImVtYWlsIjoiZHJld2JyYWRmb3JkeHl6QGdtYWlsLmNvbSIsImZ1bGxfbmFtZSI6IkRyZXcgQnJhZGZvcmQiLCJpZCI6IjY2MjUwMTU0OnF1aWNrYmFzZS5jb20iLCJxYkFuY2VzdG9yQXBwSWQiOiJub25lIiwicWJDdXJyZW50QXBwSWQiOiJidXdhaTJ6cGUiLCJxYkhhc0V2ZXJIYWRBcHBBZG1pbiI6dHJ1ZSwicWJIYXNQaXBlbGluZXNBY2Nlc3MiOnRydWUsInFiSXNDdXJyZW50QXBwQWRtaW4iOnRydWUsInFiSXNJblRyaWFsIjpmYWxzZSwicWJSZWFsbU5hbWUiOiJidWlsZGVycHJvZ3JhbS1kYnJhZGZvcmQ2ODE1IiwicWJSb290RG9tYWluIjoicXVpY2tiYXNlLmNvbSIsInFiVXNlcklkIjo2NjI1MDE1NH19.SFjzWc2Ygptf9PuZjzZ7uLbBJa3tDsZG7wTo-KqAYRE%22%2C%22signingKeyName%22%3A%22quic-quic-Va3sV%22%2C%22vendor%22%3A%7B%22id%22%3A%223ea4fa5d-2739-4262-ab84-252179156573%22%7D%2C%22allowed_products%22%3A%5B%7B%22id%22%3A%223c9d7e83-da43-482e-a58c-14265037ecd0%22%7D%5D%7D'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1741536136\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_meta.3719929843'\u001b[39m,\n value: \u001b[32m'2283411137'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n }\n]\n"
1609
+ },
1610
+ {
1611
+ "text": "Cookies after delay: [\n {\n name: \u001b[32m'browserCharset'\u001b[39m,\n value: \u001b[32m'UTF-8'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/nav/app/buwai2zpe/action'\u001b[39m,\n expires: \u001b[33m1742137335\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'UUID'\u001b[39m,\n value: \u001b[32m'4caaf526-94a0-40ae-ba0b-a9eaef52aead'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/nav/app/buwai2zpe/action'\u001b[39m,\n expires: \u001b[33m1744124536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'browserCharset'\u001b[39m,\n value: \u001b[32m'UTF-8'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/nav/main/action'\u001b[39m,\n expires: \u001b[33m1742137329\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'UUID'\u001b[39m,\n value: \u001b[32m'804015c2-a9ca-4598-be53-73b6e27fddd5'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/nav/main/action'\u001b[39m,\n expires: \u001b[33m1744124529\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'commonVars'\u001b[39m,\n value: \u001b[32m'~qlb=v2~'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/db/'\u001b[39m,\n expires: \u001b[33m1750172535.349825\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'browserCharset'\u001b[39m,\n value: \u001b[32m'UTF-8'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/db'\u001b[39m,\n expires: \u001b[33m1742137327\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'UUID'\u001b[39m,\n value: \u001b[32m'df74c468-d8c7-4c3f-a161-80ddf3767b8e'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/db'\u001b[39m,\n expires: \u001b[33m1744124528\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'ptest'\u001b[39m,\n value: \u001b[32m'1741532527274'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1776092527.281472\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'stest'\u001b[39m,\n value: \u001b[32m'1741532527274'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'shouldInitializeMetrics'\u001b[39m,\n value: \u001b[32m'true'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'cf_clearance'\u001b[39m,\n value: \u001b[32m'actDbK9QMA2pAmlOisrCzTmGLrua9pXtKlRQqVXgVoI-1741532528-1.2.1.1-x56uLz1ThPV1cd6tyj3RcdG45VWNPbFlMhWUZ8BbrV9sBFWDHL2YMPOt1qsA.vktzrCw3.0mQexBtO1XSOJ8KmoMFInDIN3WHEd4HUe9Jl3kXp.OrM46.Gmm7syRFByIWwJSRTT7G5Ub0tou6A8dA6BUb9cAnriwWuoqyLC94d_nqIczlp3Xlxwa3JWgdBqXUTvZjarRT1r3ICvXhHkkED0wHcmS4K4G25HmoJmQq8R88WlGNJcUq8V5BvpM3u5qUizteu82Z_WQMovSRh94PIutMdV2mv.UgVvo8vujJMRzbp84kkMD7Yx6hptzToVxF6H7LOOlIfg1QToiaVfiR8b5J9n1NejRrGuJnqqQ.Zls1IZ_dKbZzPwTrWVNRt8U4VACtZh1r2ZelfmKbWuD0xEHU7PkhyZDnPgJQJjhGjo'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1773068528.427527\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'None'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_visitorId.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m''\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_accountId.3719929843'\u001b[39m,\n value: \u001b[32m'822137'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_meta.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m''\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_oldVisitorId.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m''\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'TICKET_builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n value: \u001b[32m'9_bux9abmrb_b9f3pk_q4jd_a_-b_drk4zebc4u68ezcb5y6u9b49wcr9dk4hd74dcab8std2pstndbdkkhnz_iykmv7d'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'TICKET'\u001b[39m,\n value: \u001b[32m'9_bux9abmrb_b9f3pk_q4jd_a_-b_drk4zebc4u68ezcb5y6u9b49wcr9dk4hd74dcab8std2pstndbdkkhnz_iykmv7d'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'lrealm'\u001b[39m,\n value: \u001b[32m'q4jd'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1744124528.646739\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_guides_blocked.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m'0'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1741546928\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'luid'\u001b[39m,\n value: \u001b[32m'66250154.nvgc'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1776092528.705531\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'confmsg'\u001b[39m,\n value: \u001b[32m''\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_visitorId.3719929843'\u001b[39m,\n value: \u001b[32m'66250154%3Aquickbase.com'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_oldVisitorId.3719929843'\u001b[39m,\n value: \u001b[32m'_PENDO_T_CpXsVSQPFqI'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172531\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_feedback_notification_count.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m'0'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'responsiveWindowSizeObjectCookie'\u001b[39m,\n value: \u001b[32m'{%22small%22:false%2C%22xSmall%22:false%2C%22xxSmall%22:false}'\u001b[39m,\n domain: \u001b[32m'.builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1741536136\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mfalse\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'sbIID'\u001b[39m,\n value: \u001b[32m'e7fd2bd8-1b3c-95e3-a1f9-71e4625527fb'\u001b[39m,\n domain: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m-1\u001b[39m,\n httpOnly: \u001b[33mtrue\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Lax'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo___sg__.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m'%7B%22visitormetadata%22%3A%7B%22agent__qbancestorappid%22%3A%22none%22%2C%22agent__qbcurrentappid%22%3A%22buwai2zpe%22%2C%22agent__qbiscurrentappadmin%22%3Atrue%2C%22agent__qbisintrial%22%3Afalse%7D%7D'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_feedback_ping_sent.09267810-0233-4b58-65b5-6f5f6145f867'\u001b[39m,\n value: \u001b[32m'%7B%22jwt%22%3A%22eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhY2NvdW50Ijp7ImlkIjoiODIyMTM3In0sIm5vbmNlIjoiM2EwMGVkMjJmMDQ5N2Q1NGNjYjhlMDZkOGNlMDFiYjQiLCJ2aXNpdG9yIjp7ImVtYWlsIjoiZHJld2JyYWRmb3JkeHl6QGdtYWlsLmNvbSIsImZ1bGxfbmFtZSI6IkRyZXcgQnJhZGZvcmQiLCJpZCI6IjY2MjUwMTU0OnF1aWNrYmFzZS5jb20iLCJxYkFuY2VzdG9yQXBwSWQiOiJub25lIiwicWJDdXJyZW50QXBwSWQiOiJidXdhaTJ6cGUiLCJxYkhhc0V2ZXJIYWRBcHBBZG1pbiI6dHJ1ZSwicWJIYXNQaXBlbGluZXNBY2Nlc3MiOnRydWUsInFiSXNDdXJyZW50QXBwQWRtaW4iOnRydWUsInFiSXNJblRyaWFsIjpmYWxzZSwicWJSZWFsbU5hbWUiOiJidWlsZGVycHJvZ3JhbS1kYnJhZGZvcmQ2ODE1IiwicWJSb290RG9tYWluIjoicXVpY2tiYXNlLmNvbSIsInFiVXNlcklkIjo2NjI1MDE1NH19.SFjzWc2Ygptf9PuZjzZ7uLbBJa3tDsZG7wTo-KqAYRE%22%2C%22signingKeyName%22%3A%22quic-quic-Va3sV%22%2C%22vendor%22%3A%7B%22id%22%3A%223ea4fa5d-2739-4262-ab84-252179156573%22%7D%2C%22allowed_products%22%3A%5B%7B%22id%22%3A%223c9d7e83-da43-482e-a58c-14265037ecd0%22%7D%5D%7D'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1741536136\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n },\n {\n name: \u001b[32m'_pendo_meta.3719929843'\u001b[39m,\n value: \u001b[32m'2283411137'\u001b[39m,\n domain: \u001b[32m'.quickbase.com'\u001b[39m,\n path: \u001b[32m'/'\u001b[39m,\n expires: \u001b[33m1750172536\u001b[39m,\n httpOnly: \u001b[33mfalse\u001b[39m,\n secure: \u001b[33mtrue\u001b[39m,\n sameSite: \u001b[32m'Strict'\u001b[39m\n }\n]\n"
1612
+ },
1613
+ {
1614
+ "text": "Proxy called getApp with: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1615
+ },
1616
+ {
1617
+ "text": "Cache state before fetch for buwai2zpe: []\n"
1618
+ },
1619
+ {
1620
+ "text": "Mapped copyApp to copyApp\n"
1621
+ },
1622
+ {
1623
+ "text": "Mapped createApp to createApp\n"
1624
+ },
1625
+ {
1626
+ "text": "Mapped getApp to getApp\n"
1627
+ },
1628
+ {
1629
+ "text": "Mapped getAppEvents to getAppEvents\n"
1630
+ },
1631
+ {
1632
+ "text": "Mapped audit to audit\n"
1633
+ },
1634
+ {
1635
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
1636
+ },
1637
+ {
1638
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
1639
+ },
1640
+ {
1641
+ "text": "Mapped generateDocument to generateDocument\n"
1642
+ },
1643
+ {
1644
+ "text": "Mapped getField to getField\n"
1645
+ },
1646
+ {
1647
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
1648
+ },
1649
+ {
1650
+ "text": "Mapped getFields to getFields\n"
1651
+ },
1652
+ {
1653
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
1654
+ },
1655
+ {
1656
+ "text": "Mapped updateField to updateField\n"
1657
+ },
1658
+ {
1659
+ "text": "Mapped deleteFile to deleteFile\n"
1660
+ },
1661
+ {
1662
+ "text": "Mapped downloadFile to downloadFile\n"
1663
+ },
1664
+ {
1665
+ "text": "Mapped runFormula to runFormula\n"
1666
+ },
1667
+ {
1668
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
1669
+ },
1670
+ {
1671
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
1672
+ },
1673
+ {
1674
+ "text": "Mapped deleteRecords to deleteRecords\n"
1675
+ },
1676
+ {
1677
+ "text": "Mapped upsert to upsert\n"
1678
+ },
1679
+ {
1680
+ "text": "Mapped upsertRecords to upsertRecords\n"
1681
+ },
1682
+ {
1683
+ "text": "Mapped getReport to getReport\n"
1684
+ },
1685
+ {
1686
+ "text": "Mapped getTableReports to getTableReports\n"
1687
+ },
1688
+ {
1689
+ "text": "Mapped runReport to runReport\n"
1690
+ },
1691
+ {
1692
+ "text": "Mapped changesetSolution to changesetSolution\n"
1693
+ },
1694
+ {
1695
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
1696
+ },
1697
+ {
1698
+ "text": "Mapped createSolution to createSolution\n"
1699
+ },
1700
+ {
1701
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
1702
+ },
1703
+ {
1704
+ "text": "Mapped exportSolution to exportSolution\n"
1705
+ },
1706
+ {
1707
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
1708
+ },
1709
+ {
1710
+ "text": "Mapped updateSolution to updateSolution\n"
1711
+ },
1712
+ {
1713
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
1714
+ },
1715
+ {
1716
+ "text": "Mapped createRelationship to createRelationship\n"
1717
+ },
1718
+ {
1719
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
1720
+ },
1721
+ {
1722
+ "text": "Mapped deleteTable to deleteTable\n"
1723
+ },
1724
+ {
1725
+ "text": "Mapped getAppTables to getAppTables\n"
1726
+ },
1727
+ {
1728
+ "text": "Mapped getRelationships to getRelationships\n"
1729
+ },
1730
+ {
1731
+ "text": "Mapped getTable to getTable\n"
1732
+ },
1733
+ {
1734
+ "text": "Mapped updateRelationship to updateRelationship\n"
1735
+ },
1736
+ {
1737
+ "text": "Mapped updateTable to updateTable\n"
1738
+ },
1739
+ {
1740
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
1741
+ },
1742
+ {
1743
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
1744
+ },
1745
+ {
1746
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
1747
+ },
1748
+ {
1749
+ "text": "Mapped transferUserToken to transferUserToken\n"
1750
+ },
1751
+ {
1752
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
1753
+ },
1754
+ {
1755
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
1756
+ },
1757
+ {
1758
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
1759
+ },
1760
+ {
1761
+ "text": "Mapped denyUsers to denyUsers\n"
1762
+ },
1763
+ {
1764
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
1765
+ },
1766
+ {
1767
+ "text": "Mapped getUsers to getUsers\n"
1768
+ },
1769
+ {
1770
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
1771
+ },
1772
+ {
1773
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
1774
+ },
1775
+ {
1776
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
1777
+ },
1778
+ {
1779
+ "text": "Mapped undenyUsers to undenyUsers\n"
1780
+ },
1781
+ {
1782
+ "text": "Proxy called getTempTokenDBID with: { dbid: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1783
+ },
1784
+ {
1785
+ "text": "Invoking getTempTokenDBID with params: { dbid: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1786
+ },
1787
+ {
1788
+ "text": "Calling method with args: [ { dbid: \u001b[32m'buwai2zpe'\u001b[39m }, {} ]\n"
1789
+ },
1790
+ {
1791
+ "text": "Response from: https://api.quickbase.com/v1/auth/temporary/buwai2zpe status: \u001b[33m200\u001b[39m body: {\"temporaryAuthorization\":\"VEtU.OV9idXg3emV1NWpfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfZGI2eGZiOWN1eThiaWQ0eDRhcDZjZGl0YjRoZmkyY3o5YzNic3NuM2NkZzUydmVkN3ZkYml3X2l5a213aDc=\"}\n"
1792
+ },
1793
+ {
1794
+ "text": "Response from getTempTokenDBID: {\n temporaryAuthorization: \u001b[32m'VEtU.OV9idXg3emV1NWpfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfZGI2eGZiOWN1eThiaWQ0eDRhcDZjZGl0YjRoZmkyY3o5YzNic3NuM2NkZzUydmVkN3ZkYml3X2l5a213aDc='\u001b[39m\n}\n"
1795
+ },
1796
+ {
1797
+ "text": "Fetched and cached new token for dbid: buwai2zpe VEtU.OV9idXg3emV1NWpfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfZGI2eGZiOWN1eThiaWQ0eDRhcDZjZGl0YjRoZmkyY3o5YzNic3NuM2NkZzUydmVkN3ZkYml3X2l5a213aDc= Expires at: 2025-03-09T15:07:12.991Z\n"
1798
+ },
1799
+ {
1800
+ "text": "Invoking getApp with params: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1801
+ },
1802
+ {
1803
+ "text": "Calling method with args: [\n { appId: \u001b[32m'buwai2zpe'\u001b[39m },\n {\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3emV1NWpfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfZGI2eGZiOWN1eThiaWQ0eDRhcDZjZGl0YjRoZmkyY3o5YzNic3NuM2NkZzUydmVkN3ZkYml3X2l5a213aDc='\u001b[39m\n }\n }\n]\n"
1804
+ },
1805
+ {
1806
+ "text": "Response from: https://api.quickbase.com/v1/apps/buwai2zpe status: \u001b[33m200\u001b[39m body: {\"created\":\"2025-02-13T18:22:33Z\",\"dateFormat\":\"MM-DD-YYYY\",\"description\":\"\",\"hasEveryoneOnTheInternet\":false,\"id\":\"buwai2zpe\",\"memoryInfo\":{\"estMemory\":0.0,\"estMemoryInclDependentApps\":0.0},\"name\":\"qb-copy\",\"securityProperties\":{\"allowClone\":false,\"allowExport\":true,\"enableAppTokens\":true,\"hideFromPublic\":false,\"mustBeRealmApproved\":false,\"useIPFilter\":false},\"timeZone\":\"(UTC-08:00) Pacific Time (US & Canada)\",\"updated\":\"2025-03-04T04:25:51Z\"}\n"
1807
+ },
1808
+ {
1809
+ "text": "Response from getApp: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
1810
+ },
1811
+ {
1812
+ "text": "First getApp response: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
1813
+ },
1814
+ {
1815
+ "text": "Waiting 5 minutes to test token expiration...\n"
1816
+ },
1817
+ {
1818
+ "text": "Refreshed page after 5 minutes, URL: https://builderprogram-dbradford6815.quickbase.com/nav/app/buwai2zpe/action/appoverview\n"
1819
+ },
1820
+ {
1821
+ "text": "Proxy called getApp with: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1822
+ },
1823
+ {
1824
+ "text": "Cache state before fetch for buwai2zpe: [\n [\n \u001b[32m'buwai2zpe'\u001b[39m,\n {\n token: \u001b[32m'VEtU.OV9idXg3emV1NWpfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfZGI2eGZiOWN1eThiaWQ0eDRhcDZjZGl0YjRoZmkyY3o5YzNic3NuM2NkZzUydmVkN3ZkYml3X2l5a213aDc='\u001b[39m,\n expiresAt: \u001b[33m1741532832991\u001b[39m\n }\n ]\n]\n"
1825
+ },
1826
+ {
1827
+ "text": "Mapped copyApp to copyApp\n"
1828
+ },
1829
+ {
1830
+ "text": "Mapped createApp to createApp\n"
1831
+ },
1832
+ {
1833
+ "text": "Mapped getApp to getApp\n"
1834
+ },
1835
+ {
1836
+ "text": "Mapped getAppEvents to getAppEvents\n"
1837
+ },
1838
+ {
1839
+ "text": "Mapped audit to audit\n"
1840
+ },
1841
+ {
1842
+ "text": "Mapped exchangeSsoToken to exchangeSsoToken\n"
1843
+ },
1844
+ {
1845
+ "text": "Mapped getTempTokenDBID to getTempTokenDBID\n"
1846
+ },
1847
+ {
1848
+ "text": "Mapped generateDocument to generateDocument\n"
1849
+ },
1850
+ {
1851
+ "text": "Mapped getField to getField\n"
1852
+ },
1853
+ {
1854
+ "text": "Mapped getFieldUsage to getFieldUsage\n"
1855
+ },
1856
+ {
1857
+ "text": "Mapped getFields to getFields\n"
1858
+ },
1859
+ {
1860
+ "text": "Mapped getFieldsUsage to getFieldsUsage\n"
1861
+ },
1862
+ {
1863
+ "text": "Mapped updateField to updateField\n"
1864
+ },
1865
+ {
1866
+ "text": "Mapped deleteFile to deleteFile\n"
1867
+ },
1868
+ {
1869
+ "text": "Mapped downloadFile to downloadFile\n"
1870
+ },
1871
+ {
1872
+ "text": "Mapped runFormula to runFormula\n"
1873
+ },
1874
+ {
1875
+ "text": "Mapped platformAnalyticEventSummaries to platformAnalyticEventSummaries\n"
1876
+ },
1877
+ {
1878
+ "text": "Mapped platformAnalyticReads to platformAnalyticReads\n"
1879
+ },
1880
+ {
1881
+ "text": "Mapped deleteRecords to deleteRecords\n"
1882
+ },
1883
+ {
1884
+ "text": "Mapped upsert to upsert\n"
1885
+ },
1886
+ {
1887
+ "text": "Mapped upsertRecords to upsertRecords\n"
1888
+ },
1889
+ {
1890
+ "text": "Mapped getReport to getReport\n"
1891
+ },
1892
+ {
1893
+ "text": "Mapped getTableReports to getTableReports\n"
1894
+ },
1895
+ {
1896
+ "text": "Mapped runReport to runReport\n"
1897
+ },
1898
+ {
1899
+ "text": "Mapped changesetSolution to changesetSolution\n"
1900
+ },
1901
+ {
1902
+ "text": "Mapped changesetSolutionFromRecord to changesetSolutionFromRecord\n"
1903
+ },
1904
+ {
1905
+ "text": "Mapped createSolution to createSolution\n"
1906
+ },
1907
+ {
1908
+ "text": "Mapped createSolutionFromRecord to createSolutionFromRecord\n"
1909
+ },
1910
+ {
1911
+ "text": "Mapped exportSolution to exportSolution\n"
1912
+ },
1913
+ {
1914
+ "text": "Mapped exportSolutionToRecord to exportSolutionToRecord\n"
1915
+ },
1916
+ {
1917
+ "text": "Mapped updateSolution to updateSolution\n"
1918
+ },
1919
+ {
1920
+ "text": "Mapped updateSolutionToRecord to updateSolutionToRecord\n"
1921
+ },
1922
+ {
1923
+ "text": "Mapped createRelationship to createRelationship\n"
1924
+ },
1925
+ {
1926
+ "text": "Mapped deleteRelationship to deleteRelationship\n"
1927
+ },
1928
+ {
1929
+ "text": "Mapped deleteTable to deleteTable\n"
1930
+ },
1931
+ {
1932
+ "text": "Mapped getAppTables to getAppTables\n"
1933
+ },
1934
+ {
1935
+ "text": "Mapped getRelationships to getRelationships\n"
1936
+ },
1937
+ {
1938
+ "text": "Mapped getTable to getTable\n"
1939
+ },
1940
+ {
1941
+ "text": "Mapped updateRelationship to updateRelationship\n"
1942
+ },
1943
+ {
1944
+ "text": "Mapped updateTable to updateTable\n"
1945
+ },
1946
+ {
1947
+ "text": "Mapped cloneUserToken to cloneUserToken\n"
1948
+ },
1949
+ {
1950
+ "text": "Mapped deactivateUserToken to deactivateUserToken\n"
1951
+ },
1952
+ {
1953
+ "text": "Mapped deleteUserToken to deleteUserToken\n"
1954
+ },
1955
+ {
1956
+ "text": "Mapped transferUserToken to transferUserToken\n"
1957
+ },
1958
+ {
1959
+ "text": "Mapped addManagersToGroup to addManagersToGroup\n"
1960
+ },
1961
+ {
1962
+ "text": "Mapped addMembersToGroup to addMembersToGroup\n"
1963
+ },
1964
+ {
1965
+ "text": "Mapped addSubgroupsToGroup to addSubgroupsToGroup\n"
1966
+ },
1967
+ {
1968
+ "text": "Mapped denyUsers to denyUsers\n"
1969
+ },
1970
+ {
1971
+ "text": "Mapped denyUsersAndGroups to denyUsersAndGroups\n"
1972
+ },
1973
+ {
1974
+ "text": "Mapped getUsers to getUsers\n"
1975
+ },
1976
+ {
1977
+ "text": "Mapped removeManagersFromGroup to removeManagersFromGroup\n"
1978
+ },
1979
+ {
1980
+ "text": "Mapped removeMembersFromGroup to removeMembersFromGroup\n"
1981
+ },
1982
+ {
1983
+ "text": "Mapped removeSubgroupsFromGroup to removeSubgroupsFromGroup\n"
1984
+ },
1985
+ {
1986
+ "text": "Mapped undenyUsers to undenyUsers\n"
1987
+ },
1988
+ {
1989
+ "text": "Proxy called getTempTokenDBID with: { dbid: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1990
+ },
1991
+ {
1992
+ "text": "Invoking getTempTokenDBID with params: { dbid: \u001b[32m'buwai2zpe'\u001b[39m }\n"
1993
+ },
1994
+ {
1995
+ "text": "Calling method with args: [ { dbid: \u001b[32m'buwai2zpe'\u001b[39m }, {} ]\n"
1996
+ },
1997
+ {
1998
+ "text": "Response from: https://api.quickbase.com/v1/auth/temporary/buwai2zpe status: \u001b[33m200\u001b[39m body: {\"temporaryAuthorization\":\"VEtU.OV9idXg3enAza2tfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfYnJmcGdramQ0czlmN21kaHM5YzhnZDN2Y3E0Y201OG1idGJ4aG5kZ20zeXpxOXRkcWlwbno3X2l5a20zcDM=\"}\n"
1999
+ },
2000
+ {
2001
+ "text": "Response from getTempTokenDBID: {\n temporaryAuthorization: \u001b[32m'VEtU.OV9idXg3enAza2tfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfYnJmcGdramQ0czlmN21kaHM5YzhnZDN2Y3E0Y201OG1idGJ4aG5kZ20zeXpxOXRkcWlwbno3X2l5a20zcDM='\u001b[39m\n}\n"
2002
+ },
2003
+ {
2004
+ "text": "Fetched and cached new token for dbid: buwai2zpe VEtU.OV9idXg3enAza2tfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfYnJmcGdramQ0czlmN21kaHM5YzhnZDN2Y3E0Y201OG1idGJ4aG5kZ20zeXpxOXRkcWlwbno3X2l5a20zcDM= Expires at: 2025-03-09T15:12:14.473Z\n"
2005
+ },
2006
+ {
2007
+ "text": "Invoking getApp with params: { appId: \u001b[32m'buwai2zpe'\u001b[39m }\n"
2008
+ },
2009
+ {
2010
+ "text": "Calling method with args: [\n { appId: \u001b[32m'buwai2zpe'\u001b[39m },\n {\n headers: {\n \u001b[32m'QB-Realm-Hostname'\u001b[39m: \u001b[32m'builderprogram-dbradford6815.quickbase.com'\u001b[39m,\n \u001b[32m'Content-Type'\u001b[39m: \u001b[32m'application/json'\u001b[39m,\n Authorization: \u001b[32m'QB-TEMP-TOKEN VEtU.OV9idXg3enAza2tfYjlmM3BrX3E0amRfYV9idXdhaTJ6cGVfYnJmcGdramQ0czlmN21kaHM5YzhnZDN2Y3E0Y201OG1idGJ4aG5kZ20zeXpxOXRkcWlwbno3X2l5a20zcDM='\u001b[39m\n }\n }\n]\n"
2011
+ },
2012
+ {
2013
+ "text": "Response from: https://api.quickbase.com/v1/apps/buwai2zpe status: \u001b[33m200\u001b[39m body: {\"created\":\"2025-02-13T18:22:33Z\",\"dateFormat\":\"MM-DD-YYYY\",\"description\":\"\",\"hasEveryoneOnTheInternet\":false,\"id\":\"buwai2zpe\",\"memoryInfo\":{\"estMemory\":0.0,\"estMemoryInclDependentApps\":0.0},\"name\":\"qb-copy\",\"securityProperties\":{\"allowClone\":false,\"allowExport\":true,\"enableAppTokens\":true,\"hideFromPublic\":false,\"mustBeRealmApproved\":false,\"useIPFilter\":false},\"timeZone\":\"(UTC-08:00) Pacific Time (US & Canada)\",\"updated\":\"2025-03-04T04:25:51Z\"}\n"
2014
+ },
2015
+ {
2016
+ "text": "Response from getApp: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
2017
+ },
2018
+ {
2019
+ "text": "Second getApp response: {\n id: \u001b[32m'buwai2zpe'\u001b[39m,\n name: \u001b[32m'qb-copy'\u001b[39m,\n created: \u001b[35m2025-02-13T18:22:33.000Z\u001b[39m,\n updated: \u001b[35m2025-03-04T04:25:51.000Z\u001b[39m,\n description: \u001b[32m''\u001b[39m,\n timeZone: \u001b[32m'(UTC-08:00) Pacific Time (US & Canada)'\u001b[39m,\n dateFormat: \u001b[32m'MM-DD-YYYY'\u001b[39m,\n hasEveryoneOnTheInternet: \u001b[33mfalse\u001b[39m,\n memoryInfo: { estMemory: \u001b[33m0\u001b[39m, estMemoryInclDependentApps: \u001b[33m0\u001b[39m },\n securityProperties: {\n allowClone: \u001b[33mfalse\u001b[39m,\n allowExport: \u001b[33mtrue\u001b[39m,\n enableAppTokens: \u001b[33mtrue\u001b[39m,\n hideFromPublic: \u001b[33mfalse\u001b[39m,\n mustBeRealmApproved: \u001b[33mfalse\u001b[39m,\n useIPFilter: \u001b[33mfalse\u001b[39m\n }\n}\n"
2020
+ }
2021
+ ],
2022
+ "stderr": [],
2023
+ "retry": 0,
2024
+ "startTime": "2025-03-09T15:02:06.989Z",
2025
+ "attachments": []
2026
+ }
2027
+ ],
2028
+ "status": "expected"
2029
+ }
2030
+ ],
2031
+ "id": "2f702af7105aeb9bbf4a-9e94cc6aefa950e625cc",
2032
+ "file": "qb/auth/tokenRenewal.test.ts",
2033
+ "line": 31,
2034
+ "column": 3
2035
+ }
2036
+ ]
2037
+ }
2038
+ ]
2039
+ }
2040
+ ],
2041
+ "errors": [],
2042
+ "stats": {
2043
+ "startTime": "2025-03-09T15:02:06.260Z",
2044
+ "duration": 318588.789,
2045
+ "expected": 4,
2046
+ "skipped": 0,
2047
+ "unexpected": 0,
2048
+ "flaky": 0
2049
+ }
2050
+ }