@budibase/server 1.0.99 → 1.0.102

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 (228) hide show
  1. package/builder/assets/index.7d3fac69.js +1291 -0
  2. package/builder/assets/{index.7c8961b4.css → index.ea3718aa.css} +2 -2
  3. package/builder/assets/{vendor.a7c6ad0a.js → vendor.8e34a169.js} +1 -1
  4. package/builder/index.html +3 -3
  5. package/coverage/clover.xml +267 -253
  6. package/coverage/coverage-final.json +13 -13
  7. package/coverage/lcov-report/api/controllers/analytics.js.html +1 -1
  8. package/coverage/lcov-report/api/controllers/apikeys.js.html +1 -1
  9. package/coverage/lcov-report/api/controllers/application.js.html +1 -1
  10. package/coverage/lcov-report/api/controllers/auth.js.html +1 -1
  11. package/coverage/lcov-report/api/controllers/automation.js.html +1 -1
  12. package/coverage/lcov-report/api/controllers/backup.js.html +1 -1
  13. package/coverage/lcov-report/api/controllers/cloud.js.html +1 -1
  14. package/coverage/lcov-report/api/controllers/component.js.html +4 -4
  15. package/coverage/lcov-report/api/controllers/datasource.js.html +1 -1
  16. package/coverage/lcov-report/api/controllers/dev.js.html +1 -1
  17. package/coverage/lcov-report/api/controllers/index.html +16 -16
  18. package/coverage/lcov-report/api/controllers/integration.js.html +59 -11
  19. package/coverage/lcov-report/api/controllers/layout.js.html +1 -1
  20. package/coverage/lcov-report/api/controllers/metadata.js.html +1 -1
  21. package/coverage/lcov-report/api/controllers/migrations.js.html +1 -1
  22. package/coverage/lcov-report/api/controllers/permission.js.html +1 -1
  23. package/coverage/lcov-report/api/controllers/query/index.html +1 -1
  24. package/coverage/lcov-report/api/controllers/query/index.js.html +1 -1
  25. package/coverage/lcov-report/api/controllers/query/validation.js.html +2 -2
  26. package/coverage/lcov-report/api/controllers/role.js.html +1 -1
  27. package/coverage/lcov-report/api/controllers/routing.js.html +1 -1
  28. package/coverage/lcov-report/api/controllers/row/external.js.html +1 -1
  29. package/coverage/lcov-report/api/controllers/row/index.html +10 -10
  30. package/coverage/lcov-report/api/controllers/row/index.js.html +1 -1
  31. package/coverage/lcov-report/api/controllers/row/internal.js.html +19 -7
  32. package/coverage/lcov-report/api/controllers/row/internalSearch.js.html +1 -1
  33. package/coverage/lcov-report/api/controllers/row/staticFormula.js.html +1 -1
  34. package/coverage/lcov-report/api/controllers/row/utils.js.html +6 -6
  35. package/coverage/lcov-report/api/controllers/screen.js.html +1 -1
  36. package/coverage/lcov-report/api/controllers/script.js.html +1 -1
  37. package/coverage/lcov-report/api/controllers/table/bulkFormula.js.html +1 -1
  38. package/coverage/lcov-report/api/controllers/table/external.js.html +1 -1
  39. package/coverage/lcov-report/api/controllers/table/index.html +1 -1
  40. package/coverage/lcov-report/api/controllers/table/index.js.html +1 -1
  41. package/coverage/lcov-report/api/controllers/table/internal.js.html +1 -1
  42. package/coverage/lcov-report/api/controllers/table/utils.js.html +1 -1
  43. package/coverage/lcov-report/api/controllers/templates.js.html +1 -1
  44. package/coverage/lcov-report/api/controllers/user.js.html +1 -1
  45. package/coverage/lcov-report/api/controllers/view/exporters.js.html +1 -1
  46. package/coverage/lcov-report/api/controllers/view/index.html +1 -1
  47. package/coverage/lcov-report/api/controllers/view/index.js.html +1 -1
  48. package/coverage/lcov-report/api/controllers/view/utils.js.html +1 -1
  49. package/coverage/lcov-report/api/controllers/view/viewBuilder.js.html +1 -1
  50. package/coverage/lcov-report/api/controllers/webhook.js.html +1 -1
  51. package/coverage/lcov-report/api/index.html +1 -1
  52. package/coverage/lcov-report/api/index.js.html +1 -1
  53. package/coverage/lcov-report/api/routes/analytics.js.html +3 -3
  54. package/coverage/lcov-report/api/routes/apikeys.js.html +1 -1
  55. package/coverage/lcov-report/api/routes/application.js.html +1 -1
  56. package/coverage/lcov-report/api/routes/auth.js.html +1 -1
  57. package/coverage/lcov-report/api/routes/automation.js.html +1 -1
  58. package/coverage/lcov-report/api/routes/backup.js.html +1 -1
  59. package/coverage/lcov-report/api/routes/cloud.js.html +1 -1
  60. package/coverage/lcov-report/api/routes/component.js.html +1 -1
  61. package/coverage/lcov-report/api/routes/datasource.js.html +1 -1
  62. package/coverage/lcov-report/api/routes/deploy.js.html +1 -1
  63. package/coverage/lcov-report/api/routes/dev.js.html +1 -1
  64. package/coverage/lcov-report/api/routes/index.html +1 -1
  65. package/coverage/lcov-report/api/routes/index.js.html +1 -1
  66. package/coverage/lcov-report/api/routes/integration.js.html +1 -1
  67. package/coverage/lcov-report/api/routes/layout.js.html +1 -1
  68. package/coverage/lcov-report/api/routes/metadata.js.html +1 -1
  69. package/coverage/lcov-report/api/routes/migrations.js.html +1 -1
  70. package/coverage/lcov-report/api/routes/permission.js.html +1 -1
  71. package/coverage/lcov-report/api/routes/query.js.html +1 -1
  72. package/coverage/lcov-report/api/routes/role.js.html +1 -1
  73. package/coverage/lcov-report/api/routes/routing.js.html +1 -1
  74. package/coverage/lcov-report/api/routes/row.js.html +1 -1
  75. package/coverage/lcov-report/api/routes/screen.js.html +1 -1
  76. package/coverage/lcov-report/api/routes/script.js.html +1 -1
  77. package/coverage/lcov-report/api/routes/static.js.html +1 -1
  78. package/coverage/lcov-report/api/routes/table.js.html +1 -1
  79. package/coverage/lcov-report/api/routes/templates.js.html +1 -1
  80. package/coverage/lcov-report/api/routes/user.js.html +1 -1
  81. package/coverage/lcov-report/api/routes/utils/index.html +1 -1
  82. package/coverage/lcov-report/api/routes/utils/validators.js.html +1 -1
  83. package/coverage/lcov-report/api/routes/view.js.html +1 -1
  84. package/coverage/lcov-report/api/routes/webhook.js.html +1 -1
  85. package/coverage/lcov-report/automations/actions.js.html +1 -1
  86. package/coverage/lcov-report/automations/automationUtils.js.html +1 -1
  87. package/coverage/lcov-report/automations/bullboard.js.html +1 -1
  88. package/coverage/lcov-report/automations/index.html +12 -12
  89. package/coverage/lcov-report/automations/index.js.html +1 -1
  90. package/coverage/lcov-report/automations/steps/bash.js.html +1 -1
  91. package/coverage/lcov-report/automations/steps/createRow.js.html +1 -1
  92. package/coverage/lcov-report/automations/steps/delay.js.html +1 -1
  93. package/coverage/lcov-report/automations/steps/deleteRow.js.html +1 -1
  94. package/coverage/lcov-report/automations/steps/discord.js.html +1 -1
  95. package/coverage/lcov-report/automations/steps/executeQuery.js.html +1 -1
  96. package/coverage/lcov-report/automations/steps/executeScript.js.html +1 -1
  97. package/coverage/lcov-report/automations/steps/filter.js.html +1 -1
  98. package/coverage/lcov-report/automations/steps/index.html +1 -1
  99. package/coverage/lcov-report/automations/steps/integromat.js.html +1 -1
  100. package/coverage/lcov-report/automations/steps/outgoingWebhook.js.html +1 -1
  101. package/coverage/lcov-report/automations/steps/queryRows.js.html +1 -1
  102. package/coverage/lcov-report/automations/steps/sendSmtpEmail.js.html +1 -1
  103. package/coverage/lcov-report/automations/steps/serverLog.js.html +1 -1
  104. package/coverage/lcov-report/automations/steps/slack.js.html +1 -1
  105. package/coverage/lcov-report/automations/steps/updateRow.js.html +1 -1
  106. package/coverage/lcov-report/automations/steps/utils.js.html +1 -1
  107. package/coverage/lcov-report/automations/steps/zapier.js.html +1 -1
  108. package/coverage/lcov-report/automations/triggerInfo/app.js.html +1 -1
  109. package/coverage/lcov-report/automations/triggerInfo/cron.js.html +1 -1
  110. package/coverage/lcov-report/automations/triggerInfo/index.html +1 -1
  111. package/coverage/lcov-report/automations/triggerInfo/index.js.html +1 -1
  112. package/coverage/lcov-report/automations/triggerInfo/rowDeleted.js.html +1 -1
  113. package/coverage/lcov-report/automations/triggerInfo/rowSaved.js.html +1 -1
  114. package/coverage/lcov-report/automations/triggerInfo/rowUpdated.js.html +1 -1
  115. package/coverage/lcov-report/automations/triggerInfo/webhook.js.html +1 -1
  116. package/coverage/lcov-report/automations/triggers.js.html +1 -1
  117. package/coverage/lcov-report/automations/utils.js.html +20 -8
  118. package/coverage/lcov-report/constants/index.html +1 -1
  119. package/coverage/lcov-report/constants/index.js.html +1 -1
  120. package/coverage/lcov-report/constants/layouts.js.html +1 -1
  121. package/coverage/lcov-report/constants/screens.js.html +1 -1
  122. package/coverage/lcov-report/db/client.js.html +1 -1
  123. package/coverage/lcov-report/db/inMemoryView.js.html +1 -1
  124. package/coverage/lcov-report/db/index.html +1 -1
  125. package/coverage/lcov-report/db/index.js.html +1 -1
  126. package/coverage/lcov-report/db/linkedRows/LinkController.js.html +1 -1
  127. package/coverage/lcov-report/db/linkedRows/index.html +1 -1
  128. package/coverage/lcov-report/db/linkedRows/index.js.html +10 -10
  129. package/coverage/lcov-report/db/linkedRows/linkUtils.js.html +7 -7
  130. package/coverage/lcov-report/db/newid.js.html +2 -2
  131. package/coverage/lcov-report/db/utils.js.html +2 -2
  132. package/coverage/lcov-report/events/AutomationEmitter.js.html +1 -1
  133. package/coverage/lcov-report/events/index.html +1 -1
  134. package/coverage/lcov-report/events/index.js.html +1 -1
  135. package/coverage/lcov-report/events/utils.js.html +1 -1
  136. package/coverage/lcov-report/index.html +24 -24
  137. package/coverage/lcov-report/integrations/tests/TestConfiguration.js.html +1 -1
  138. package/coverage/lcov-report/integrations/tests/index.html +1 -1
  139. package/coverage/lcov-report/middleware/appInfo.js.html +1 -1
  140. package/coverage/lcov-report/middleware/authorized.js.html +1 -1
  141. package/coverage/lcov-report/middleware/builder.js.html +1 -1
  142. package/coverage/lcov-report/middleware/currentapp.js.html +1 -1
  143. package/coverage/lcov-report/middleware/index.html +1 -1
  144. package/coverage/lcov-report/middleware/joi-validator.js.html +1 -1
  145. package/coverage/lcov-report/middleware/publicApi.js.html +1 -1
  146. package/coverage/lcov-report/middleware/resourceId.js.html +1 -1
  147. package/coverage/lcov-report/middleware/selfhost.js.html +1 -1
  148. package/coverage/lcov-report/middleware/usageQuota.js.html +1 -1
  149. package/coverage/lcov-report/middleware/utils.js.html +1 -1
  150. package/coverage/lcov-report/threads/automation.js.html +1 -1
  151. package/coverage/lcov-report/threads/index.html +1 -1
  152. package/coverage/lcov-report/threads/index.js.html +1 -1
  153. package/coverage/lcov-report/threads/query.js.html +1 -1
  154. package/coverage/lcov-report/threads/utils.js.html +1 -1
  155. package/coverage/lcov-report/utilities/bcrypt.js.html +1 -1
  156. package/coverage/lcov-report/utilities/budibaseDir.js.html +1 -1
  157. package/coverage/lcov-report/utilities/centralPath.js.html +1 -1
  158. package/coverage/lcov-report/utilities/csvParser.js.html +1 -1
  159. package/coverage/lcov-report/utilities/global.js.html +1 -1
  160. package/coverage/lcov-report/utilities/index.html +1 -1
  161. package/coverage/lcov-report/utilities/index.js.html +1 -1
  162. package/coverage/lcov-report/utilities/queue/inMemoryQueue.js.html +1 -1
  163. package/coverage/lcov-report/utilities/queue/index.html +1 -1
  164. package/coverage/lcov-report/utilities/routing/index.html +1 -1
  165. package/coverage/lcov-report/utilities/routing/index.js.html +1 -1
  166. package/coverage/lcov-report/utilities/rowProcessor/index.html +1 -1
  167. package/coverage/lcov-report/utilities/rowProcessor/index.js.html +12 -12
  168. package/coverage/lcov-report/utilities/rowProcessor/utils.js.html +8 -8
  169. package/coverage/lcov-report/utilities/scriptRunner.js.html +1 -1
  170. package/coverage/lcov-report/utilities/security.js.html +1 -1
  171. package/coverage/lcov-report/utilities/statusCodes.js.html +1 -1
  172. package/coverage/lcov-report/utilities/usageQuota/index.html +1 -1
  173. package/coverage/lcov-report/utilities/usageQuota/index.js.html +1 -1
  174. package/coverage/lcov-report/utilities/usageQuota/rows.js.html +1 -1
  175. package/coverage/lcov-report/utilities/usageQuota/usageQuoteReset.js.html +1 -1
  176. package/coverage/lcov-report/utilities/users.js.html +1 -1
  177. package/coverage/lcov-report/utilities/workerRequests.js.html +1 -1
  178. package/coverage/lcov.info +409 -391
  179. package/dist/api/controllers/integration.js +15 -1
  180. package/dist/api/controllers/query/import/index.js +2 -1
  181. package/dist/api/controllers/query/import/sources/base/index.js +12 -1
  182. package/dist/api/controllers/query/import/sources/curl.js +2 -2
  183. package/dist/api/controllers/query/import/sources/openapi3.js +174 -0
  184. package/dist/api/controllers/query/import/sources/tests/openapi3/data/crud/crud.json +253 -0
  185. package/dist/api/controllers/query/import/sources/tests/openapi3/data/petstore/petstore.json +1225 -0
  186. package/dist/api/controllers/row/internal.js +2 -1
  187. package/dist/api/routes/analytics.js +2 -2
  188. package/dist/automations/utils.js +3 -1
  189. package/dist/definitions/datasource.js +1 -0
  190. package/dist/environment.js +2 -0
  191. package/dist/integrations/base/sql.js +16 -9
  192. package/dist/integrations/dynamodb.js +3 -1
  193. package/dist/integrations/firebase.js +192 -0
  194. package/dist/integrations/googlesheets.js +17 -1
  195. package/dist/integrations/index.js +3 -1
  196. package/dist/integrations/mysql.js +14 -1
  197. package/dist/integrations/rest.js +2 -1
  198. package/dist/package.json +7 -4
  199. package/dist/tsconfig.tsbuildinfo +1 -1
  200. package/package.json +8 -5
  201. package/scripts/dev/manage.js +2 -1
  202. package/src/api/controllers/integration.js +17 -1
  203. package/src/api/controllers/query/import/index.ts +2 -1
  204. package/src/api/controllers/query/import/sources/base/index.ts +12 -2
  205. package/src/api/controllers/query/import/sources/curl.ts +2 -2
  206. package/src/api/controllers/query/import/sources/openapi3.ts +205 -0
  207. package/src/api/controllers/query/import/sources/tests/openapi3/data/crud/crud.json +253 -0
  208. package/src/api/controllers/query/import/sources/tests/openapi3/data/crud/crud.yaml +153 -0
  209. package/src/api/controllers/query/import/sources/tests/openapi3/data/petstore/petstore.json +1225 -0
  210. package/src/api/controllers/query/import/sources/tests/openapi3/data/petstore/petstore.yaml +804 -0
  211. package/src/api/controllers/query/import/sources/tests/openapi3/openapi3.spec.js +240 -0
  212. package/src/api/controllers/query/import/tests/index.spec.js +43 -0
  213. package/src/api/controllers/row/internal.js +5 -1
  214. package/src/api/routes/analytics.js +2 -2
  215. package/src/api/routes/tests/misc.spec.js +2 -2
  216. package/src/automations/utils.js +5 -1
  217. package/src/definitions/datasource.ts +2 -5
  218. package/src/definitions/openapi.ts +468 -468
  219. package/src/environment.js +2 -0
  220. package/src/integrations/base/sql.ts +14 -9
  221. package/src/integrations/dynamodb.ts +3 -1
  222. package/src/integrations/firebase.ts +205 -0
  223. package/src/integrations/googlesheets.ts +16 -1
  224. package/src/integrations/index.ts +3 -1
  225. package/src/integrations/mysql.ts +15 -1
  226. package/src/integrations/rest.ts +2 -1
  227. package/src/integrations/tests/sql.spec.js +51 -0
  228. package/builder/assets/index.44b5c19a.js +0 -1291
@@ -9,79 +9,79 @@ export interface paths {
9
9
  parameters: {
10
10
  header: {
11
11
  /** The ID of the app which this request is targeting. */
12
- "x-budibase-app-id": components["parameters"]["appId"];
13
- };
14
- };
12
+ "x-budibase-app-id": components["parameters"]["appId"]
13
+ }
14
+ }
15
15
  responses: {
16
16
  /** Returns the created application. */
17
17
  200: {
18
18
  content: {
19
- "application/json": components["schemas"]["applicationOutput"];
20
- };
21
- };
22
- };
19
+ "application/json": components["schemas"]["applicationOutput"]
20
+ }
21
+ }
22
+ }
23
23
  requestBody: {
24
24
  content: {
25
- "application/json": components["schemas"]["application"];
26
- };
27
- };
28
- };
29
- };
25
+ "application/json": components["schemas"]["application"]
26
+ }
27
+ }
28
+ }
29
+ }
30
30
  "/applications/{appId}": {
31
31
  get: {
32
32
  parameters: {
33
33
  path: {
34
34
  /** The ID of the app which this request is targeting. */
35
- appId: components["parameters"]["appIdUrl"];
36
- };
37
- };
35
+ appId: components["parameters"]["appIdUrl"]
36
+ }
37
+ }
38
38
  responses: {
39
39
  /** Returns the retrieved application. */
40
40
  200: {
41
41
  content: {
42
- "application/json": components["schemas"]["applicationOutput"];
43
- };
44
- };
45
- };
46
- };
42
+ "application/json": components["schemas"]["applicationOutput"]
43
+ }
44
+ }
45
+ }
46
+ }
47
47
  put: {
48
48
  parameters: {
49
49
  path: {
50
50
  /** The ID of the app which this request is targeting. */
51
- appId: components["parameters"]["appIdUrl"];
52
- };
53
- };
51
+ appId: components["parameters"]["appIdUrl"]
52
+ }
53
+ }
54
54
  responses: {
55
55
  /** Returns the updated application. */
56
56
  200: {
57
57
  content: {
58
- "application/json": components["schemas"]["applicationOutput"];
59
- };
60
- };
61
- };
58
+ "application/json": components["schemas"]["applicationOutput"]
59
+ }
60
+ }
61
+ }
62
62
  requestBody: {
63
63
  content: {
64
- "application/json": components["schemas"]["application"];
65
- };
66
- };
67
- };
64
+ "application/json": components["schemas"]["application"]
65
+ }
66
+ }
67
+ }
68
68
  delete: {
69
69
  parameters: {
70
70
  path: {
71
71
  /** The ID of the app which this request is targeting. */
72
- appId: components["parameters"]["appIdUrl"];
73
- };
74
- };
72
+ appId: components["parameters"]["appIdUrl"]
73
+ }
74
+ }
75
75
  responses: {
76
76
  /** Returns the deleted application. */
77
77
  200: {
78
78
  content: {
79
- "application/json": components["schemas"]["applicationOutput"];
80
- };
81
- };
82
- };
83
- };
84
- };
79
+ "application/json": components["schemas"]["applicationOutput"]
80
+ }
81
+ }
82
+ }
83
+ }
84
+ }
85
85
  "/applications/search": {
86
86
  /** Based on application properties (currently only name) search for applications. */
87
87
  post: {
@@ -89,193 +89,193 @@ export interface paths {
89
89
  /** Returns the applications that were found based on the search parameters. */
90
90
  200: {
91
91
  content: {
92
- "application/json": components["schemas"]["applicationSearch"];
93
- };
94
- };
95
- };
92
+ "application/json": components["schemas"]["applicationSearch"]
93
+ }
94
+ }
95
+ }
96
96
  requestBody: {
97
97
  content: {
98
- "application/json": components["schemas"]["nameSearch"];
99
- };
100
- };
101
- };
102
- };
98
+ "application/json": components["schemas"]["nameSearch"]
99
+ }
100
+ }
101
+ }
102
+ }
103
103
  "/queries/{queryId}": {
104
104
  /** Queries which have been created within a Budibase app can be executed using this, */
105
105
  post: {
106
106
  parameters: {
107
107
  path: {
108
108
  /** The ID of the query which this request is targeting. */
109
- queryId: components["parameters"]["queryId"];
110
- };
109
+ queryId: components["parameters"]["queryId"]
110
+ }
111
111
  header: {
112
112
  /** The ID of the app which this request is targeting. */
113
- "x-budibase-app-id": components["parameters"]["appId"];
114
- };
115
- };
113
+ "x-budibase-app-id": components["parameters"]["appId"]
114
+ }
115
+ }
116
116
  responses: {
117
117
  /** Returns the result of the query execution. */
118
118
  200: {
119
119
  content: {
120
- "application/json": components["schemas"]["executeQueryOutput"];
121
- };
122
- };
123
- };
120
+ "application/json": components["schemas"]["executeQueryOutput"]
121
+ }
122
+ }
123
+ }
124
124
  requestBody: {
125
125
  content: {
126
- "application/json": components["schemas"]["executeQuery"];
127
- };
128
- };
129
- };
130
- };
126
+ "application/json": components["schemas"]["executeQuery"]
127
+ }
128
+ }
129
+ }
130
+ }
131
131
  "/queries/search": {
132
132
  /** Based on query properties (currently only name) search for queries. */
133
133
  post: {
134
134
  parameters: {
135
135
  header: {
136
136
  /** The ID of the app which this request is targeting. */
137
- "x-budibase-app-id": components["parameters"]["appId"];
138
- };
139
- };
137
+ "x-budibase-app-id": components["parameters"]["appId"]
138
+ }
139
+ }
140
140
  responses: {
141
141
  /** Returns the queries found based on the search parameters. */
142
142
  200: {
143
143
  content: {
144
- "application/json": components["schemas"]["querySearch"];
145
- };
146
- };
147
- };
144
+ "application/json": components["schemas"]["querySearch"]
145
+ }
146
+ }
147
+ }
148
148
  requestBody: {
149
149
  content: {
150
- "application/json": components["schemas"]["nameSearch"];
151
- };
152
- };
153
- };
154
- };
150
+ "application/json": components["schemas"]["nameSearch"]
151
+ }
152
+ }
153
+ }
154
+ }
155
155
  "/tables/{tableId}/rows": {
156
156
  /** Creates a row within the specified table. */
157
157
  post: {
158
158
  parameters: {
159
159
  path: {
160
160
  /** The ID of the table which this request is targeting. */
161
- tableId: components["parameters"]["tableId"];
162
- };
161
+ tableId: components["parameters"]["tableId"]
162
+ }
163
163
  header: {
164
164
  /** The ID of the app which this request is targeting. */
165
- "x-budibase-app-id": components["parameters"]["appId"];
166
- };
167
- };
165
+ "x-budibase-app-id": components["parameters"]["appId"]
166
+ }
167
+ }
168
168
  responses: {
169
169
  /** Returns the created row, including the ID which has been generated for it. This can be found in the Budibase portal, viewed under the developer information. */
170
170
  200: {
171
171
  content: {
172
- "application/json": components["schemas"]["rowOutput"];
173
- };
174
- };
175
- };
172
+ "application/json": components["schemas"]["rowOutput"]
173
+ }
174
+ }
175
+ }
176
176
  requestBody: {
177
177
  content: {
178
- "application/json": components["schemas"]["row"];
179
- };
180
- };
181
- };
182
- };
178
+ "application/json": components["schemas"]["row"]
179
+ }
180
+ }
181
+ }
182
+ }
183
183
  "/tables/{tableId}/rows/{rowId}": {
184
184
  /** This gets a single row, it will be enriched with the full related rows, rather than the squashed "primaryDisplay" format returned by the search endpoint. */
185
185
  get: {
186
186
  parameters: {
187
187
  path: {
188
188
  /** The ID of the table which this request is targeting. */
189
- tableId: components["parameters"]["tableId"];
189
+ tableId: components["parameters"]["tableId"]
190
190
  /** The ID of the row which this request is targeting. */
191
- rowId: components["parameters"]["rowId"];
192
- };
191
+ rowId: components["parameters"]["rowId"]
192
+ }
193
193
  header: {
194
194
  /** The ID of the app which this request is targeting. */
195
- "x-budibase-app-id": components["parameters"]["appId"];
196
- };
197
- };
195
+ "x-budibase-app-id": components["parameters"]["appId"]
196
+ }
197
+ }
198
198
  responses: {
199
199
  /** Returns the retrieved row. */
200
200
  200: {
201
201
  content: {
202
- "application/json": components["schemas"]["rowOutput"];
203
- };
204
- };
205
- };
206
- };
202
+ "application/json": components["schemas"]["rowOutput"]
203
+ }
204
+ }
205
+ }
206
+ }
207
207
  /** Updates a row within the specified table. */
208
208
  put: {
209
209
  parameters: {
210
210
  path: {
211
211
  /** The ID of the table which this request is targeting. */
212
- tableId: components["parameters"]["tableId"];
212
+ tableId: components["parameters"]["tableId"]
213
213
  /** The ID of the row which this request is targeting. */
214
- rowId: components["parameters"]["rowId"];
215
- };
214
+ rowId: components["parameters"]["rowId"]
215
+ }
216
216
  header: {
217
217
  /** The ID of the app which this request is targeting. */
218
- "x-budibase-app-id": components["parameters"]["appId"];
219
- };
220
- };
218
+ "x-budibase-app-id": components["parameters"]["appId"]
219
+ }
220
+ }
221
221
  responses: {
222
222
  /** Returns the created row, including the ID which has been generated for it. */
223
223
  200: {
224
224
  content: {
225
- "application/json": components["schemas"]["rowOutput"];
226
- };
227
- };
228
- };
225
+ "application/json": components["schemas"]["rowOutput"]
226
+ }
227
+ }
228
+ }
229
229
  requestBody: {
230
230
  content: {
231
- "application/json": components["schemas"]["row"];
232
- };
233
- };
234
- };
231
+ "application/json": components["schemas"]["row"]
232
+ }
233
+ }
234
+ }
235
235
  /** Deletes a row within the specified table. */
236
236
  delete: {
237
237
  parameters: {
238
238
  path: {
239
239
  /** The ID of the table which this request is targeting. */
240
- tableId: components["parameters"]["tableId"];
240
+ tableId: components["parameters"]["tableId"]
241
241
  /** The ID of the row which this request is targeting. */
242
- rowId: components["parameters"]["rowId"];
243
- };
242
+ rowId: components["parameters"]["rowId"]
243
+ }
244
244
  header: {
245
245
  /** The ID of the app which this request is targeting. */
246
- "x-budibase-app-id": components["parameters"]["appId"];
247
- };
248
- };
246
+ "x-budibase-app-id": components["parameters"]["appId"]
247
+ }
248
+ }
249
249
  responses: {
250
250
  /** Returns the deleted row, including the ID which has been generated for it. */
251
251
  200: {
252
252
  content: {
253
- "application/json": components["schemas"]["rowOutput"];
254
- };
255
- };
256
- };
257
- };
258
- };
253
+ "application/json": components["schemas"]["rowOutput"]
254
+ }
255
+ }
256
+ }
257
+ }
258
+ }
259
259
  "/tables/{tableId}/rows/search": {
260
260
  post: {
261
261
  parameters: {
262
262
  path: {
263
263
  /** The ID of the table which this request is targeting. */
264
- tableId: components["parameters"]["tableId"];
265
- };
264
+ tableId: components["parameters"]["tableId"]
265
+ }
266
266
  header: {
267
267
  /** The ID of the app which this request is targeting. */
268
- "x-budibase-app-id": components["parameters"]["appId"];
269
- };
270
- };
268
+ "x-budibase-app-id": components["parameters"]["appId"]
269
+ }
270
+ }
271
271
  responses: {
272
272
  /** The response will contain an array of rows that match the search parameters. */
273
273
  200: {
274
274
  content: {
275
- "application/json": components["schemas"]["searchOutput"];
276
- };
277
- };
278
- };
275
+ "application/json": components["schemas"]["searchOutput"]
276
+ }
277
+ }
278
+ }
279
279
  requestBody: {
280
280
  content: {
281
281
  "application/json": {
@@ -284,244 +284,244 @@ export interface paths {
284
284
  * @description A map of field name to the string to search for, this will look for rows that have a value starting with the string value.
285
285
  * @example [object Object]
286
286
  */
287
- string?: { [key: string]: string };
287
+ string?: { [key: string]: string }
288
288
  /** @description A fuzzy search, only supported by internal tables. */
289
- fuzzy?: { [key: string]: unknown };
289
+ fuzzy?: { [key: string]: unknown }
290
290
  /**
291
291
  * @description Searches within a range, the format of this must be columnName -> [low, high].
292
292
  * @example [object Object]
293
293
  */
294
- range?: { [key: string]: unknown };
294
+ range?: { [key: string]: unknown }
295
295
  /** @description Searches for rows that have a column value that is exactly the value set. */
296
- equal?: { [key: string]: unknown };
296
+ equal?: { [key: string]: unknown }
297
297
  /** @description Searches for any row which does not contain the specified column value. */
298
- notEqual?: { [key: string]: unknown };
298
+ notEqual?: { [key: string]: unknown }
299
299
  /**
300
300
  * @description Searches for rows which do not contain the specified column. The object should simply contain keys of the column names, these can map to any value.
301
301
  * @example [object Object]
302
302
  */
303
- empty?: { [key: string]: unknown };
303
+ empty?: { [key: string]: unknown }
304
304
  /** @description Searches for rows which have the specified column. */
305
- notEmpty?: { [key: string]: unknown };
305
+ notEmpty?: { [key: string]: unknown }
306
306
  /** @description Searches for rows which have a column value that is any of the specified values. The format of this must be columnName -> [value1, value2]. */
307
- oneOf?: { [key: string]: unknown };
308
- };
307
+ oneOf?: { [key: string]: unknown }
308
+ }
309
309
  /** @description Enables pagination, by default this is disabled. */
310
- paginate?: boolean;
310
+ paginate?: boolean
311
311
  /** @description If retrieving another page, the bookmark from the previous request must be supplied. */
312
- bookmark?: string | number;
312
+ bookmark?: string | number
313
313
  /** @description The maximum number of rows to return, useful when paginating, for internal tables this will be limited to 1000, for SQL tables it will be 5000. */
314
- limit?: number;
314
+ limit?: number
315
315
  /** @description A set of parameters describing the sort behaviour of the search. */
316
316
  sort?: {
317
317
  /**
318
318
  * @description The order of the sort, by default this is ascending.
319
319
  * @enum {string}
320
320
  */
321
- order?: "ascending" | "descending";
321
+ order?: "ascending" | "descending"
322
322
  /** @description The name of the column by which the rows will be sorted. */
323
- column?: string;
323
+ column?: string
324
324
  /**
325
325
  * @description Defines whether the column should be treated as a string or as numbers when sorting.
326
326
  * @enum {string}
327
327
  */
328
- type?: "string" | "number";
329
- };
330
- };
331
- };
332
- };
333
- };
334
- };
328
+ type?: "string" | "number"
329
+ }
330
+ }
331
+ }
332
+ }
333
+ }
334
+ }
335
335
  "/tables": {
336
336
  /** Create a table, this could be internal or external. */
337
337
  post: {
338
338
  parameters: {
339
339
  header: {
340
340
  /** The ID of the app which this request is targeting. */
341
- "x-budibase-app-id": components["parameters"]["appId"];
342
- };
343
- };
341
+ "x-budibase-app-id": components["parameters"]["appId"]
342
+ }
343
+ }
344
344
  responses: {
345
345
  /** Returns the created table, including the ID which has been generated for it. This can be internal or external data sources. */
346
346
  200: {
347
347
  content: {
348
- "application/json": components["schemas"]["tableOutput"];
349
- };
350
- };
351
- };
348
+ "application/json": components["schemas"]["tableOutput"]
349
+ }
350
+ }
351
+ }
352
352
  requestBody: {
353
353
  content: {
354
- "application/json": components["schemas"]["table"];
355
- };
356
- };
357
- };
358
- };
354
+ "application/json": components["schemas"]["table"]
355
+ }
356
+ }
357
+ }
358
+ }
359
359
  "/tables/{tableId}": {
360
360
  /** Lookup a table, this could be internal or external. */
361
361
  get: {
362
362
  parameters: {
363
363
  path: {
364
364
  /** The ID of the table which this request is targeting. */
365
- tableId: components["parameters"]["tableId"];
366
- };
365
+ tableId: components["parameters"]["tableId"]
366
+ }
367
367
  header: {
368
368
  /** The ID of the app which this request is targeting. */
369
- "x-budibase-app-id": components["parameters"]["appId"];
370
- };
371
- };
369
+ "x-budibase-app-id": components["parameters"]["appId"]
370
+ }
371
+ }
372
372
  responses: {
373
373
  /** Returns the retrieved table. */
374
374
  200: {
375
375
  content: {
376
- "application/json": components["schemas"]["tableOutput"];
377
- };
378
- };
379
- };
380
- };
376
+ "application/json": components["schemas"]["tableOutput"]
377
+ }
378
+ }
379
+ }
380
+ }
381
381
  /** Update a table, this could be internal or external. */
382
382
  put: {
383
383
  parameters: {
384
384
  path: {
385
385
  /** The ID of the table which this request is targeting. */
386
- tableId: components["parameters"]["tableId"];
387
- };
386
+ tableId: components["parameters"]["tableId"]
387
+ }
388
388
  header: {
389
389
  /** The ID of the app which this request is targeting. */
390
- "x-budibase-app-id": components["parameters"]["appId"];
391
- };
392
- };
390
+ "x-budibase-app-id": components["parameters"]["appId"]
391
+ }
392
+ }
393
393
  responses: {
394
394
  /** Returns the updated table. */
395
395
  200: {
396
396
  content: {
397
- "application/json": components["schemas"]["tableOutput"];
398
- };
399
- };
400
- };
397
+ "application/json": components["schemas"]["tableOutput"]
398
+ }
399
+ }
400
+ }
401
401
  requestBody: {
402
402
  content: {
403
- "application/json": components["schemas"]["table"];
404
- };
405
- };
406
- };
403
+ "application/json": components["schemas"]["table"]
404
+ }
405
+ }
406
+ }
407
407
  /** Delete a table, this could be internal or external. */
408
408
  delete: {
409
409
  parameters: {
410
410
  path: {
411
411
  /** The ID of the table which this request is targeting. */
412
- tableId: components["parameters"]["tableId"];
413
- };
412
+ tableId: components["parameters"]["tableId"]
413
+ }
414
414
  header: {
415
415
  /** The ID of the app which this request is targeting. */
416
- "x-budibase-app-id": components["parameters"]["appId"];
417
- };
418
- };
416
+ "x-budibase-app-id": components["parameters"]["appId"]
417
+ }
418
+ }
419
419
  responses: {
420
420
  /** Returns the deleted table. */
421
421
  200: {
422
422
  content: {
423
- "application/json": components["schemas"]["tableOutput"];
424
- };
425
- };
426
- };
427
- };
428
- };
423
+ "application/json": components["schemas"]["tableOutput"]
424
+ }
425
+ }
426
+ }
427
+ }
428
+ }
429
429
  "/tables/search": {
430
430
  /** Based on table properties (currently only name) search for tables. This could be an internal or an external table. */
431
431
  post: {
432
432
  parameters: {
433
433
  header: {
434
434
  /** The ID of the app which this request is targeting. */
435
- "x-budibase-app-id": components["parameters"]["appId"];
436
- };
437
- };
435
+ "x-budibase-app-id": components["parameters"]["appId"]
436
+ }
437
+ }
438
438
  responses: {
439
439
  /** Returns the found tables, based on the search parameters. */
440
440
  200: {
441
441
  content: {
442
- "application/json": components["schemas"]["tableSearch"];
443
- };
444
- };
445
- };
442
+ "application/json": components["schemas"]["tableSearch"]
443
+ }
444
+ }
445
+ }
446
446
  requestBody: {
447
447
  content: {
448
- "application/json": components["schemas"]["nameSearch"];
449
- };
450
- };
451
- };
452
- };
448
+ "application/json": components["schemas"]["nameSearch"]
449
+ }
450
+ }
451
+ }
452
+ }
453
453
  "/users": {
454
454
  post: {
455
455
  responses: {
456
456
  /** Returns the created user. */
457
457
  200: {
458
458
  content: {
459
- "application/json": components["schemas"]["userOutput"];
460
- };
461
- };
462
- };
459
+ "application/json": components["schemas"]["userOutput"]
460
+ }
461
+ }
462
+ }
463
463
  requestBody: {
464
464
  content: {
465
- "application/json": components["schemas"]["user"];
466
- };
467
- };
468
- };
469
- };
465
+ "application/json": components["schemas"]["user"]
466
+ }
467
+ }
468
+ }
469
+ }
470
470
  "/users/{userId}": {
471
471
  get: {
472
472
  parameters: {
473
473
  path: {
474
474
  /** The ID of the user which this request is targeting. */
475
- userId: components["parameters"]["userId"];
476
- };
477
- };
475
+ userId: components["parameters"]["userId"]
476
+ }
477
+ }
478
478
  responses: {
479
479
  /** Returns the retrieved user. */
480
480
  200: {
481
481
  content: {
482
- "application/json": components["schemas"]["userOutput"];
483
- };
484
- };
485
- };
486
- };
482
+ "application/json": components["schemas"]["userOutput"]
483
+ }
484
+ }
485
+ }
486
+ }
487
487
  put: {
488
488
  parameters: {
489
489
  path: {
490
490
  /** The ID of the user which this request is targeting. */
491
- userId: components["parameters"]["userId"];
492
- };
493
- };
491
+ userId: components["parameters"]["userId"]
492
+ }
493
+ }
494
494
  responses: {
495
495
  /** Returns the updated user. */
496
496
  200: {
497
497
  content: {
498
- "application/json": components["schemas"]["userOutput"];
499
- };
500
- };
501
- };
498
+ "application/json": components["schemas"]["userOutput"]
499
+ }
500
+ }
501
+ }
502
502
  requestBody: {
503
503
  content: {
504
- "application/json": components["schemas"]["user"];
505
- };
506
- };
507
- };
504
+ "application/json": components["schemas"]["user"]
505
+ }
506
+ }
507
+ }
508
508
  delete: {
509
509
  parameters: {
510
510
  path: {
511
511
  /** The ID of the user which this request is targeting. */
512
- userId: components["parameters"]["userId"];
513
- };
514
- };
512
+ userId: components["parameters"]["userId"]
513
+ }
514
+ }
515
515
  responses: {
516
516
  /** Returns the deleted user. */
517
517
  200: {
518
518
  content: {
519
- "application/json": components["schemas"]["userOutput"];
520
- };
521
- };
522
- };
523
- };
524
- };
519
+ "application/json": components["schemas"]["userOutput"]
520
+ }
521
+ }
522
+ }
523
+ }
524
+ }
525
525
  "/users/search": {
526
526
  /** Based on user properties (currently only name) search for users. */
527
527
  post: {
@@ -529,102 +529,102 @@ export interface paths {
529
529
  /** Returns the found users based on search parameters. */
530
530
  200: {
531
531
  content: {
532
- "application/json": components["schemas"]["userSearch"];
533
- };
534
- };
535
- };
532
+ "application/json": components["schemas"]["userSearch"]
533
+ }
534
+ }
535
+ }
536
536
  requestBody: {
537
537
  content: {
538
- "application/json": components["schemas"]["nameSearch"];
539
- };
540
- };
541
- };
542
- };
538
+ "application/json": components["schemas"]["nameSearch"]
539
+ }
540
+ }
541
+ }
542
+ }
543
543
  }
544
544
 
545
545
  export interface components {
546
546
  schemas: {
547
547
  application: {
548
548
  /** @description The name of the app. */
549
- name: string;
549
+ name: string
550
550
  /** @description The URL by which the app is accessed, this must be URL encoded. */
551
- url?: string;
552
- };
551
+ url?: string
552
+ }
553
553
  applicationOutput: {
554
554
  data: {
555
555
  /** @description The name of the app. */
556
- name: string;
556
+ name: string
557
557
  /** @description The URL by which the app is accessed, this must be URL encoded. */
558
- url: string;
558
+ url: string
559
559
  /** @description The ID of the app. */
560
- _id: string;
560
+ _id: string
561
561
  /**
562
562
  * @description The status of the app, stating it if is the development or published version.
563
563
  * @enum {string}
564
564
  */
565
- status: "development" | "published";
565
+ status: "development" | "published"
566
566
  /** @description States when the app was created, will be constant. Stored in ISO format. */
567
- createdAt: string;
567
+ createdAt: string
568
568
  /** @description States the last time the app was updated - stored in ISO format. */
569
- updatedAt: string;
569
+ updatedAt: string
570
570
  /** @description States the version of the Budibase client this app is currently based on. */
571
- version: string;
571
+ version: string
572
572
  /** @description In a multi-tenant environment this will state the tenant this app is within. */
573
- tenantId?: string;
573
+ tenantId?: string
574
574
  /** @description The user this app is currently being built by. */
575
- lockedBy?: { [key: string]: unknown };
576
- };
577
- };
575
+ lockedBy?: { [key: string]: unknown }
576
+ }
577
+ }
578
578
  applicationSearch: {
579
579
  data: {
580
580
  /** @description The name of the app. */
581
- name: string;
581
+ name: string
582
582
  /** @description The URL by which the app is accessed, this must be URL encoded. */
583
- url: string;
583
+ url: string
584
584
  /** @description The ID of the app. */
585
- _id: string;
585
+ _id: string
586
586
  /**
587
587
  * @description The status of the app, stating it if is the development or published version.
588
588
  * @enum {string}
589
589
  */
590
- status: "development" | "published";
590
+ status: "development" | "published"
591
591
  /** @description States when the app was created, will be constant. Stored in ISO format. */
592
- createdAt: string;
592
+ createdAt: string
593
593
  /** @description States the last time the app was updated - stored in ISO format. */
594
- updatedAt: string;
594
+ updatedAt: string
595
595
  /** @description States the version of the Budibase client this app is currently based on. */
596
- version: string;
596
+ version: string
597
597
  /** @description In a multi-tenant environment this will state the tenant this app is within. */
598
- tenantId?: string;
598
+ tenantId?: string
599
599
  /** @description The user this app is currently being built by. */
600
- lockedBy?: { [key: string]: unknown };
601
- }[];
602
- };
600
+ lockedBy?: { [key: string]: unknown }
601
+ }[]
602
+ }
603
603
  /** @description The row to be created/updated, based on the table schema. */
604
- row: { [key: string]: unknown };
604
+ row: { [key: string]: unknown }
605
605
  searchOutput: {
606
606
  /** @description An array of rows, these will each contain an _id field which can be used to update or delete them. */
607
- data: { [key: string]: unknown }[];
607
+ data: { [key: string]: unknown }[]
608
608
  /** @description If pagination in use, this should be provided. */
609
- bookmark?: string | number;
609
+ bookmark?: string | number
610
610
  /** @description If pagination in use, this will determine if there is another page to fetch. */
611
- hasNextPage?: boolean;
612
- };
611
+ hasNextPage?: boolean
612
+ }
613
613
  rowOutput: {
614
614
  /** @description The row to be created/updated, based on the table schema. */
615
615
  data: {
616
616
  /** @description The ID of the row. */
617
- _id: string;
617
+ _id: string
618
618
  /** @description The ID of the table this row comes from. */
619
- tableId: string;
620
- } & { [key: string]: unknown };
621
- };
619
+ tableId: string
620
+ } & { [key: string]: unknown }
621
+ }
622
622
  /** @description The table to be created/updated. */
623
623
  table: {
624
624
  /** @description The name of the table. */
625
- name: string;
625
+ name: string
626
626
  /** @description The name of the column which should be used in relationship tags when relating to this table. */
627
- primaryDisplay?: string;
627
+ primaryDisplay?: string
628
628
  schema: {
629
629
  [key: string]:
630
630
  | {
@@ -632,60 +632,60 @@ export interface components {
632
632
  * @description A relationship column.
633
633
  * @enum {string}
634
634
  */
635
- type?: "link";
635
+ type?: "link"
636
636
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
637
637
  constraints?: {
638
638
  /** @enum {string} */
639
- type?: "string" | "number" | "object" | "boolean";
639
+ type?: "string" | "number" | "object" | "boolean"
640
640
  /** @description Defines whether the column is required or not. */
641
- presence?: boolean;
642
- };
641
+ presence?: boolean
642
+ }
643
643
  /** @description The name of the column. */
644
- name?: string;
644
+ name?: string
645
645
  /** @description Defines whether the column is automatically generated. */
646
- autocolumn?: boolean;
646
+ autocolumn?: boolean
647
647
  /** @description The name of the column which a relationship column is related to in another table. */
648
- fieldName?: string;
648
+ fieldName?: string
649
649
  /** @description The ID of the table which a relationship column is related to. */
650
- tableId?: string;
650
+ tableId?: string
651
651
  /**
652
652
  * @description Defines the type of relationship that this column will be used for.
653
653
  * @enum {string}
654
654
  */
655
- relationshipType?: "one-to-many" | "many-to-one" | "many-to-many";
655
+ relationshipType?: "one-to-many" | "many-to-one" | "many-to-many"
656
656
  /** @description When using a SQL table that contains many to many relationships this defines the table the relationships are linked through. */
657
- through?: string;
657
+ through?: string
658
658
  /** @description When using a SQL table that contains a one to many relationship this defines the foreign key. */
659
- foreignKey?: string;
659
+ foreignKey?: string
660
660
  /** @description When using a SQL table that utilises a through table, this defines the primary key in the through table for this table. */
661
- throughFrom?: string;
661
+ throughFrom?: string
662
662
  /** @description When using a SQL table that utilises a through table, this defines the primary key in the through table for the related table. */
663
- throughTo?: string;
663
+ throughTo?: string
664
664
  }
665
665
  | {
666
666
  /**
667
667
  * @description A formula column.
668
668
  * @enum {string}
669
669
  */
670
- type?: "formula";
670
+ type?: "formula"
671
671
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
672
672
  constraints?: {
673
673
  /** @enum {string} */
674
- type?: "string" | "number" | "object" | "boolean";
674
+ type?: "string" | "number" | "object" | "boolean"
675
675
  /** @description Defines whether the column is required or not. */
676
- presence?: boolean;
677
- };
676
+ presence?: boolean
677
+ }
678
678
  /** @description The name of the column. */
679
- name?: string;
679
+ name?: string
680
680
  /** @description Defines whether the column is automatically generated. */
681
- autocolumn?: boolean;
681
+ autocolumn?: boolean
682
682
  /** @description Defines a Handlebars or JavaScript formula to use, note that Javascript formulas are expected to be provided in the base64 format. */
683
- formula?: string;
683
+ formula?: string
684
684
  /**
685
685
  * @description Defines whether this is a static or dynamic formula.
686
686
  * @enum {string}
687
687
  */
688
- formulaType?: "static" | "dynamic";
688
+ formulaType?: "static" | "dynamic"
689
689
  }
690
690
  | {
691
691
  /**
@@ -705,28 +705,28 @@ export interface components {
705
705
  | "formula"
706
706
  | "auto"
707
707
  | "json"
708
- | "internal";
708
+ | "internal"
709
709
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
710
710
  constraints?: {
711
711
  /** @enum {string} */
712
- type?: "string" | "number" | "object" | "boolean";
712
+ type?: "string" | "number" | "object" | "boolean"
713
713
  /** @description Defines whether the column is required or not. */
714
- presence?: boolean;
715
- };
714
+ presence?: boolean
715
+ }
716
716
  /** @description The name of the column. */
717
- name?: string;
717
+ name?: string
718
718
  /** @description Defines whether the column is automatically generated. */
719
- autocolumn?: boolean;
720
- };
721
- };
722
- };
719
+ autocolumn?: boolean
720
+ }
721
+ }
722
+ }
723
723
  tableOutput: {
724
724
  /** @description The table to be created/updated. */
725
725
  data: {
726
726
  /** @description The name of the table. */
727
- name: string;
727
+ name: string
728
728
  /** @description The name of the column which should be used in relationship tags when relating to this table. */
729
- primaryDisplay?: string;
729
+ primaryDisplay?: string
730
730
  schema: {
731
731
  [key: string]:
732
732
  | {
@@ -734,22 +734,22 @@ export interface components {
734
734
  * @description A relationship column.
735
735
  * @enum {string}
736
736
  */
737
- type?: "link";
737
+ type?: "link"
738
738
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
739
739
  constraints?: {
740
740
  /** @enum {string} */
741
- type?: "string" | "number" | "object" | "boolean";
741
+ type?: "string" | "number" | "object" | "boolean"
742
742
  /** @description Defines whether the column is required or not. */
743
- presence?: boolean;
744
- };
743
+ presence?: boolean
744
+ }
745
745
  /** @description The name of the column. */
746
- name?: string;
746
+ name?: string
747
747
  /** @description Defines whether the column is automatically generated. */
748
- autocolumn?: boolean;
748
+ autocolumn?: boolean
749
749
  /** @description The name of the column which a relationship column is related to in another table. */
750
- fieldName?: string;
750
+ fieldName?: string
751
751
  /** @description The ID of the table which a relationship column is related to. */
752
- tableId?: string;
752
+ tableId?: string
753
753
  /**
754
754
  * @description Defines the type of relationship that this column will be used for.
755
755
  * @enum {string}
@@ -757,40 +757,40 @@ export interface components {
757
757
  relationshipType?:
758
758
  | "one-to-many"
759
759
  | "many-to-one"
760
- | "many-to-many";
760
+ | "many-to-many"
761
761
  /** @description When using a SQL table that contains many to many relationships this defines the table the relationships are linked through. */
762
- through?: string;
762
+ through?: string
763
763
  /** @description When using a SQL table that contains a one to many relationship this defines the foreign key. */
764
- foreignKey?: string;
764
+ foreignKey?: string
765
765
  /** @description When using a SQL table that utilises a through table, this defines the primary key in the through table for this table. */
766
- throughFrom?: string;
766
+ throughFrom?: string
767
767
  /** @description When using a SQL table that utilises a through table, this defines the primary key in the through table for the related table. */
768
- throughTo?: string;
768
+ throughTo?: string
769
769
  }
770
770
  | {
771
771
  /**
772
772
  * @description A formula column.
773
773
  * @enum {string}
774
774
  */
775
- type?: "formula";
775
+ type?: "formula"
776
776
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
777
777
  constraints?: {
778
778
  /** @enum {string} */
779
- type?: "string" | "number" | "object" | "boolean";
779
+ type?: "string" | "number" | "object" | "boolean"
780
780
  /** @description Defines whether the column is required or not. */
781
- presence?: boolean;
782
- };
781
+ presence?: boolean
782
+ }
783
783
  /** @description The name of the column. */
784
- name?: string;
784
+ name?: string
785
785
  /** @description Defines whether the column is automatically generated. */
786
- autocolumn?: boolean;
786
+ autocolumn?: boolean
787
787
  /** @description Defines a Handlebars or JavaScript formula to use, note that Javascript formulas are expected to be provided in the base64 format. */
788
- formula?: string;
788
+ formula?: string
789
789
  /**
790
790
  * @description Defines whether this is a static or dynamic formula.
791
791
  * @enum {string}
792
792
  */
793
- formulaType?: "static" | "dynamic";
793
+ formulaType?: "static" | "dynamic"
794
794
  }
795
795
  | {
796
796
  /**
@@ -810,30 +810,30 @@ export interface components {
810
810
  | "formula"
811
811
  | "auto"
812
812
  | "json"
813
- | "internal";
813
+ | "internal"
814
814
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
815
815
  constraints?: {
816
816
  /** @enum {string} */
817
- type?: "string" | "number" | "object" | "boolean";
817
+ type?: "string" | "number" | "object" | "boolean"
818
818
  /** @description Defines whether the column is required or not. */
819
- presence?: boolean;
820
- };
819
+ presence?: boolean
820
+ }
821
821
  /** @description The name of the column. */
822
- name?: string;
822
+ name?: string
823
823
  /** @description Defines whether the column is automatically generated. */
824
- autocolumn?: boolean;
825
- };
826
- };
824
+ autocolumn?: boolean
825
+ }
826
+ }
827
827
  /** @description The ID of the table. */
828
- _id: string;
829
- };
830
- };
828
+ _id: string
829
+ }
830
+ }
831
831
  tableSearch: {
832
832
  data: {
833
833
  /** @description The name of the table. */
834
- name: string;
834
+ name: string
835
835
  /** @description The name of the column which should be used in relationship tags when relating to this table. */
836
- primaryDisplay?: string;
836
+ primaryDisplay?: string
837
837
  schema: {
838
838
  [key: string]:
839
839
  | {
@@ -841,22 +841,22 @@ export interface components {
841
841
  * @description A relationship column.
842
842
  * @enum {string}
843
843
  */
844
- type?: "link";
844
+ type?: "link"
845
845
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
846
846
  constraints?: {
847
847
  /** @enum {string} */
848
- type?: "string" | "number" | "object" | "boolean";
848
+ type?: "string" | "number" | "object" | "boolean"
849
849
  /** @description Defines whether the column is required or not. */
850
- presence?: boolean;
851
- };
850
+ presence?: boolean
851
+ }
852
852
  /** @description The name of the column. */
853
- name?: string;
853
+ name?: string
854
854
  /** @description Defines whether the column is automatically generated. */
855
- autocolumn?: boolean;
855
+ autocolumn?: boolean
856
856
  /** @description The name of the column which a relationship column is related to in another table. */
857
- fieldName?: string;
857
+ fieldName?: string
858
858
  /** @description The ID of the table which a relationship column is related to. */
859
- tableId?: string;
859
+ tableId?: string
860
860
  /**
861
861
  * @description Defines the type of relationship that this column will be used for.
862
862
  * @enum {string}
@@ -864,40 +864,40 @@ export interface components {
864
864
  relationshipType?:
865
865
  | "one-to-many"
866
866
  | "many-to-one"
867
- | "many-to-many";
867
+ | "many-to-many"
868
868
  /** @description When using a SQL table that contains many to many relationships this defines the table the relationships are linked through. */
869
- through?: string;
869
+ through?: string
870
870
  /** @description When using a SQL table that contains a one to many relationship this defines the foreign key. */
871
- foreignKey?: string;
871
+ foreignKey?: string
872
872
  /** @description When using a SQL table that utilises a through table, this defines the primary key in the through table for this table. */
873
- throughFrom?: string;
873
+ throughFrom?: string
874
874
  /** @description When using a SQL table that utilises a through table, this defines the primary key in the through table for the related table. */
875
- throughTo?: string;
875
+ throughTo?: string
876
876
  }
877
877
  | {
878
878
  /**
879
879
  * @description A formula column.
880
880
  * @enum {string}
881
881
  */
882
- type?: "formula";
882
+ type?: "formula"
883
883
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
884
884
  constraints?: {
885
885
  /** @enum {string} */
886
- type?: "string" | "number" | "object" | "boolean";
886
+ type?: "string" | "number" | "object" | "boolean"
887
887
  /** @description Defines whether the column is required or not. */
888
- presence?: boolean;
889
- };
888
+ presence?: boolean
889
+ }
890
890
  /** @description The name of the column. */
891
- name?: string;
891
+ name?: string
892
892
  /** @description Defines whether the column is automatically generated. */
893
- autocolumn?: boolean;
893
+ autocolumn?: boolean
894
894
  /** @description Defines a Handlebars or JavaScript formula to use, note that Javascript formulas are expected to be provided in the base64 format. */
895
- formula?: string;
895
+ formula?: string
896
896
  /**
897
897
  * @description Defines whether this is a static or dynamic formula.
898
898
  * @enum {string}
899
899
  */
900
- formulaType?: "static" | "dynamic";
900
+ formulaType?: "static" | "dynamic"
901
901
  }
902
902
  | {
903
903
  /**
@@ -917,20 +917,20 @@ export interface components {
917
917
  | "formula"
918
918
  | "auto"
919
919
  | "json"
920
- | "internal";
920
+ | "internal"
921
921
  /** @description A constraint can be applied to the column which will be validated against when a row is saved. */
922
922
  constraints?: {
923
923
  /** @enum {string} */
924
- type?: "string" | "number" | "object" | "boolean";
924
+ type?: "string" | "number" | "object" | "boolean"
925
925
  /** @description Defines whether the column is required or not. */
926
- presence?: boolean;
927
- };
926
+ presence?: boolean
927
+ }
928
928
  /** @description The name of the column. */
929
- name?: string;
929
+ name?: string
930
930
  /** @description Defines whether the column is automatically generated. */
931
- autocolumn?: boolean;
932
- };
933
- };
931
+ autocolumn?: boolean
932
+ }
933
+ }
934
934
  /** @description The ID of the table. */
935
935
  _id: string;
936
936
  }[];
@@ -949,179 +949,179 @@ export interface components {
949
949
  };
950
950
  executeQueryOutput: {
951
951
  /** @description The data response from the query. */
952
- data: { [key: string]: unknown }[];
952
+ data: { [key: string]: unknown }[]
953
953
  /** @description Extra information that is not part of the main data, e.g. headers. */
954
954
  extra?: {
955
955
  /** @description If carrying out a REST request, this will contain the response headers. */
956
- headers?: { [key: string]: unknown };
956
+ headers?: { [key: string]: unknown }
957
957
  /** @description The raw query response, as a string. */
958
- raw?: string;
959
- };
958
+ raw?: string
959
+ }
960
960
  /** @description If pagination is supported, this will contain the bookmark/anchor information for it. */
961
- pagination?: { [key: string]: unknown };
962
- };
961
+ pagination?: { [key: string]: unknown }
962
+ }
963
963
  query: {
964
964
  /** @description The ID of the query. */
965
- _id: string;
965
+ _id: string
966
966
  /** @description The ID of the data source the query belongs to. */
967
- datasourceId?: string;
967
+ datasourceId?: string
968
968
  /** @description The bindings which are required to perform this query. */
969
- parameters?: string[];
969
+ parameters?: string[]
970
970
  /** @description The fields that are used to perform this query, e.g. the sql statement */
971
- fields?: { [key: string]: unknown };
971
+ fields?: { [key: string]: unknown }
972
972
  /**
973
973
  * @description The verb that describes this query.
974
974
  * @enum {undefined}
975
975
  */
976
- queryVerb?: "create" | "read" | "update" | "delete";
976
+ queryVerb?: "create" | "read" | "update" | "delete"
977
977
  /** @description The name of the query. */
978
- name: string;
978
+ name: string
979
979
  /** @description The schema of the data returned when the query is executed. */
980
- schema: { [key: string]: unknown };
980
+ schema: { [key: string]: unknown }
981
981
  /** @description The JavaScript transformer function, applied after the query responds with data. */
982
- transformer?: string;
982
+ transformer?: string
983
983
  /** @description Whether the query has readable data. */
984
- readable?: boolean;
985
- };
984
+ readable?: boolean
985
+ }
986
986
  querySearch: {
987
987
  data: {
988
988
  /** @description The ID of the query. */
989
- _id: string;
989
+ _id: string
990
990
  /** @description The ID of the data source the query belongs to. */
991
- datasourceId?: string;
991
+ datasourceId?: string
992
992
  /** @description The bindings which are required to perform this query. */
993
- parameters?: string[];
993
+ parameters?: string[]
994
994
  /** @description The fields that are used to perform this query, e.g. the sql statement */
995
- fields?: { [key: string]: unknown };
995
+ fields?: { [key: string]: unknown }
996
996
  /**
997
997
  * @description The verb that describes this query.
998
998
  * @enum {undefined}
999
999
  */
1000
- queryVerb?: "create" | "read" | "update" | "delete";
1000
+ queryVerb?: "create" | "read" | "update" | "delete"
1001
1001
  /** @description The name of the query. */
1002
- name: string;
1002
+ name: string
1003
1003
  /** @description The schema of the data returned when the query is executed. */
1004
- schema: { [key: string]: unknown };
1004
+ schema: { [key: string]: unknown }
1005
1005
  /** @description The JavaScript transformer function, applied after the query responds with data. */
1006
- transformer?: string;
1006
+ transformer?: string
1007
1007
  /** @description Whether the query has readable data. */
1008
- readable?: boolean;
1009
- }[];
1010
- };
1008
+ readable?: boolean
1009
+ }[]
1010
+ }
1011
1011
  user: {
1012
1012
  /** @description The email address of the user, this must be unique. */
1013
- email: string;
1013
+ email: string
1014
1014
  /** @description The password of the user if using password based login - this will never be returned. This can be left out of subsequent requests (updates) and will be enriched back into the user structure. */
1015
- password?: string;
1015
+ password?: string
1016
1016
  /**
1017
1017
  * @description The status of the user, if they are active.
1018
1018
  * @enum {string}
1019
1019
  */
1020
- status?: "active";
1020
+ status?: "active"
1021
1021
  /** @description The first name of the user */
1022
- firstName?: string;
1022
+ firstName?: string
1023
1023
  /** @description The last name of the user */
1024
- lastName?: string;
1024
+ lastName?: string
1025
1025
  /** @description If set to true forces the user to reset their password on first login. */
1026
- forceResetPassword?: boolean;
1026
+ forceResetPassword?: boolean
1027
1027
  /** @description Describes if the user is a builder user or not. */
1028
1028
  builder?: {
1029
1029
  /** @description If set to true the user will be able to build any app in the system. */
1030
- global?: boolean;
1031
- };
1030
+ global?: boolean
1031
+ }
1032
1032
  /** @description Describes if the user is an admin user or not. */
1033
1033
  admin?: {
1034
1034
  /** @description If set to true the user will be able to administrate the system. */
1035
- global?: boolean;
1036
- };
1035
+ global?: boolean
1036
+ }
1037
1037
  /** @description Contains the roles of the user per app (assuming they are not a builder user). */
1038
- roles: { [key: string]: string };
1039
- };
1038
+ roles: { [key: string]: string }
1039
+ }
1040
1040
  userOutput: {
1041
1041
  data: {
1042
1042
  /** @description The email address of the user, this must be unique. */
1043
- email: string;
1043
+ email: string
1044
1044
  /** @description The password of the user if using password based login - this will never be returned. This can be left out of subsequent requests (updates) and will be enriched back into the user structure. */
1045
- password?: string;
1045
+ password?: string
1046
1046
  /**
1047
1047
  * @description The status of the user, if they are active.
1048
1048
  * @enum {string}
1049
1049
  */
1050
- status?: "active";
1050
+ status?: "active"
1051
1051
  /** @description The first name of the user */
1052
- firstName?: string;
1052
+ firstName?: string
1053
1053
  /** @description The last name of the user */
1054
- lastName?: string;
1054
+ lastName?: string
1055
1055
  /** @description If set to true forces the user to reset their password on first login. */
1056
- forceResetPassword?: boolean;
1056
+ forceResetPassword?: boolean
1057
1057
  /** @description Describes if the user is a builder user or not. */
1058
1058
  builder?: {
1059
1059
  /** @description If set to true the user will be able to build any app in the system. */
1060
- global?: boolean;
1061
- };
1060
+ global?: boolean
1061
+ }
1062
1062
  /** @description Describes if the user is an admin user or not. */
1063
1063
  admin?: {
1064
1064
  /** @description If set to true the user will be able to administrate the system. */
1065
- global?: boolean;
1066
- };
1065
+ global?: boolean
1066
+ }
1067
1067
  /** @description Contains the roles of the user per app (assuming they are not a builder user). */
1068
- roles: { [key: string]: string };
1068
+ roles: { [key: string]: string }
1069
1069
  /** @description The ID of the user. */
1070
- _id: string;
1071
- };
1072
- };
1070
+ _id: string
1071
+ }
1072
+ }
1073
1073
  userSearch: {
1074
1074
  data: {
1075
1075
  /** @description The email address of the user, this must be unique. */
1076
- email: string;
1076
+ email: string
1077
1077
  /** @description The password of the user if using password based login - this will never be returned. This can be left out of subsequent requests (updates) and will be enriched back into the user structure. */
1078
- password?: string;
1078
+ password?: string
1079
1079
  /**
1080
1080
  * @description The status of the user, if they are active.
1081
1081
  * @enum {string}
1082
1082
  */
1083
- status?: "active";
1083
+ status?: "active"
1084
1084
  /** @description The first name of the user */
1085
- firstName?: string;
1085
+ firstName?: string
1086
1086
  /** @description The last name of the user */
1087
- lastName?: string;
1087
+ lastName?: string
1088
1088
  /** @description If set to true forces the user to reset their password on first login. */
1089
- forceResetPassword?: boolean;
1089
+ forceResetPassword?: boolean
1090
1090
  /** @description Describes if the user is a builder user or not. */
1091
1091
  builder?: {
1092
1092
  /** @description If set to true the user will be able to build any app in the system. */
1093
- global?: boolean;
1094
- };
1093
+ global?: boolean
1094
+ }
1095
1095
  /** @description Describes if the user is an admin user or not. */
1096
1096
  admin?: {
1097
1097
  /** @description If set to true the user will be able to administrate the system. */
1098
- global?: boolean;
1099
- };
1098
+ global?: boolean
1099
+ }
1100
1100
  /** @description Contains the roles of the user per app (assuming they are not a builder user). */
1101
- roles: { [key: string]: string };
1101
+ roles: { [key: string]: string }
1102
1102
  /** @description The ID of the user. */
1103
- _id: string;
1104
- }[];
1105
- };
1103
+ _id: string
1104
+ }[]
1105
+ }
1106
1106
  nameSearch: {
1107
1107
  /** @description The name to be used when searching - this will be used in a case insensitive starts with match. */
1108
- name: string;
1109
- };
1110
- };
1108
+ name: string
1109
+ }
1110
+ }
1111
1111
  parameters: {
1112
1112
  /** @description The ID of the table which this request is targeting. */
1113
- tableId: string;
1113
+ tableId: string
1114
1114
  /** @description The ID of the row which this request is targeting. */
1115
- rowId: string;
1115
+ rowId: string
1116
1116
  /** @description The ID of the app which this request is targeting. */
1117
- appId: string;
1117
+ appId: string
1118
1118
  /** @description The ID of the app which this request is targeting. */
1119
- appIdUrl: string;
1119
+ appIdUrl: string
1120
1120
  /** @description The ID of the query which this request is targeting. */
1121
- queryId: string;
1121
+ queryId: string
1122
1122
  /** @description The ID of the user which this request is targeting. */
1123
- userId: string;
1124
- };
1123
+ userId: string
1124
+ }
1125
1125
  }
1126
1126
 
1127
1127
  export interface operations {}