@celigo/api-specs 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +119 -0
- package/dist/account.yml +592 -0
- package/dist/agent.yml +908 -0
- package/dist/ai-agent.yml +5471 -0
- package/dist/api.yml +4140 -0
- package/dist/apim.yml +1286 -0
- package/dist/asynchelper.yml +3391 -0
- package/dist/audit.yml +2006 -0
- package/dist/connection.yml +8665 -0
- package/dist/connector.yml +1406 -0
- package/dist/ediprofile.yml +911 -0
- package/dist/editransaction.yml +1210 -0
- package/dist/enduser.yml +1724 -0
- package/dist/environment.yml +568 -0
- package/dist/eventreport.yml +692 -0
- package/dist/export.yml +17610 -0
- package/dist/filedefinition.yml +1396 -0
- package/dist/filestorage.yml +3102 -0
- package/dist/flow.yml +7928 -0
- package/dist/guardrail.yml +2763 -0
- package/dist/httpconnector.yml +2277 -0
- package/dist/httpconnectorendpoint.yml +722 -0
- package/dist/httpconnectorresource.yml +396 -0
- package/dist/iclient.yml +4452 -0
- package/dist/import.yml +15381 -0
- package/dist/integration.yml +4406 -0
- package/dist/job.yml +2014 -0
- package/dist/lookupcache.yml +1325 -0
- package/dist/marketplace.yml +685 -0
- package/dist/mcp-oauth-provider.yml +590 -0
- package/dist/mcp-server.yml +2656 -0
- package/dist/notification.yml +488 -0
- package/dist/processor.yml +1253 -0
- package/dist/profile.yml +455 -0
- package/dist/recyclebin.yml +768 -0
- package/dist/script.yml +1128 -0
- package/dist/stack.yml +1291 -0
- package/dist/state.yml +894 -0
- package/dist/subscription.yml +1405 -0
- package/dist/sync.yml +4857 -0
- package/dist/tag.yml +553 -0
- package/dist/template.yml +897 -0
- package/dist/tool.yml +33656 -0
- package/dist/tradingpartnerconnector.yml +1490 -0
- package/dist/user.yml +831 -0
- package/package.json +41 -0
- package/schemas.json +8420 -0
|
@@ -0,0 +1,2277 @@
|
|
|
1
|
+
openapi: 3.2.0
|
|
2
|
+
info:
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
title: HTTP Connectors
|
|
5
|
+
description: API for managing Celigo HTTP Connectors — reusable API framework definitions inherited by HTTP connections, imports, and exports.
|
|
6
|
+
x-celigo-ai-guidance:
|
|
7
|
+
- |-
|
|
8
|
+
API for managing HTTP Connector framework resources in Celigo.
|
|
9
|
+
HTTP Connectors define versioned API frameworks (base URIs, versioning strategy,
|
|
10
|
+
supported-by rules) that can be used by HTTP connections, iClients, imports, and exports.
|
|
11
|
+
servers:
|
|
12
|
+
- url: https://api.integrator.io
|
|
13
|
+
description: Production (US / default region)
|
|
14
|
+
- url: https://api.eu.integrator.io
|
|
15
|
+
description: Production (EU region)
|
|
16
|
+
- url: https://api.au.integrator.io
|
|
17
|
+
description: Production (AU region)
|
|
18
|
+
- url: https://api.ca.integrator.io
|
|
19
|
+
description: Production (CA region)
|
|
20
|
+
security:
|
|
21
|
+
- bearerAuth: []
|
|
22
|
+
tags:
|
|
23
|
+
- name: HTTP Connectors
|
|
24
|
+
description: |-
|
|
25
|
+
HTTP Connectors define reusable API frameworks — base URIs, versioning
|
|
26
|
+
strategies, authentication presets, and supported-by rules — that
|
|
27
|
+
HTTP connections, iClients, imports, and exports inherit.
|
|
28
|
+
|
|
29
|
+
Each connector has one or more versions and may group multiple API
|
|
30
|
+
products under `apis[]`. Child resources (HTTP Connector Resources
|
|
31
|
+
and Endpoints) define the specific operations available.
|
|
32
|
+
|
|
33
|
+
Two structural patterns exist:
|
|
34
|
+
- **Flat** — versions and baseURIs sit directly on the connector.
|
|
35
|
+
Most connectors use this pattern.
|
|
36
|
+
- **Grouped** — the connector nests API products under `apis[]`,
|
|
37
|
+
each with its own versions and baseURIs.
|
|
38
|
+
|
|
39
|
+
## HTTP connector schema
|
|
40
|
+
|
|
41
|
+
{% openapi-schemas spec="httpconnector" schemas="HTTPConnector" grouped="true" %}
|
|
42
|
+
paths:
|
|
43
|
+
/v1/httpconnectors:
|
|
44
|
+
get:
|
|
45
|
+
x-internal: false
|
|
46
|
+
operationId: listHttpConnectors
|
|
47
|
+
tags:
|
|
48
|
+
- HTTP Connectors
|
|
49
|
+
summary: List HTTP connectors
|
|
50
|
+
description: |-
|
|
51
|
+
Returns all HTTP Connectors visible to the authenticated account.
|
|
52
|
+
The list response is abridged -- it omits `published`, `baseURIs`,
|
|
53
|
+
`supportedBy`, and other detail fields. Use the by-ID endpoint for
|
|
54
|
+
the full object.
|
|
55
|
+
parameters:
|
|
56
|
+
- name: publishedOnly
|
|
57
|
+
in: query
|
|
58
|
+
description: When true, only return published HTTP Connectors.
|
|
59
|
+
schema:
|
|
60
|
+
type: boolean
|
|
61
|
+
responses:
|
|
62
|
+
'200':
|
|
63
|
+
description: Successfully retrieved list of HTTP Connectors.
|
|
64
|
+
content:
|
|
65
|
+
application/json:
|
|
66
|
+
schema:
|
|
67
|
+
type: array
|
|
68
|
+
items:
|
|
69
|
+
$ref: '#/components/schemas/ListItem'
|
|
70
|
+
examples:
|
|
71
|
+
two_connectors:
|
|
72
|
+
value:
|
|
73
|
+
- _id: 63987132784a39b73aae63cd
|
|
74
|
+
name: 15Five
|
|
75
|
+
createdAt: '2023-01-17T09:51:46.326Z'
|
|
76
|
+
lastModified: '2025-09-02T09:15:49.168Z'
|
|
77
|
+
_userId: 6316f2b1e37e79778a43391c
|
|
78
|
+
helpURL: https://docs.celigo.com/hc/en-us/articles/4411468706203
|
|
79
|
+
legacyId: 15five
|
|
80
|
+
legacyIds:
|
|
81
|
+
- 15five
|
|
82
|
+
isGraphQL: false
|
|
83
|
+
supportsIClient: false
|
|
84
|
+
hasBlobEndpoints: false
|
|
85
|
+
versions:
|
|
86
|
+
- _id: 63987132784a39b73aae63ce
|
|
87
|
+
name: v1
|
|
88
|
+
- _id: 6a1b2c3d4e5f6789abcdef01
|
|
89
|
+
name: AFAS ERP
|
|
90
|
+
createdAt: '2025-10-28T13:32:39.999Z'
|
|
91
|
+
lastModified: '2025-11-12T08:56:03.102Z'
|
|
92
|
+
_userId: 6316f2b1e37e79778a43391c
|
|
93
|
+
helpURL: https://docs.celigo.com/hc/en-us/articles/42612451102235
|
|
94
|
+
isGraphQL: false
|
|
95
|
+
supportsIClient: true
|
|
96
|
+
hasBlobEndpoints: false
|
|
97
|
+
apis:
|
|
98
|
+
- _id: 6a1b2c3d4e5f6789abcdef02
|
|
99
|
+
name: Profit
|
|
100
|
+
versions:
|
|
101
|
+
- _id: 6a1b2c3d4e5f6789abcdef03
|
|
102
|
+
name: v1
|
|
103
|
+
'204':
|
|
104
|
+
description: No HTTP Connectors match the filter criteria.
|
|
105
|
+
'401':
|
|
106
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
107
|
+
post:
|
|
108
|
+
x-internal: false
|
|
109
|
+
operationId: createHttpConnector
|
|
110
|
+
tags:
|
|
111
|
+
- HTTP Connectors
|
|
112
|
+
summary: Create an HTTP connector
|
|
113
|
+
description: |-
|
|
114
|
+
Creates a new HTTP Connector framework definition. `name` is
|
|
115
|
+
required, along with either `versions` (flat connector) or `apis`
|
|
116
|
+
(grouped connector).
|
|
117
|
+
requestBody:
|
|
118
|
+
required: true
|
|
119
|
+
content:
|
|
120
|
+
application/json:
|
|
121
|
+
schema:
|
|
122
|
+
$ref: '#/components/schemas/Request'
|
|
123
|
+
examples:
|
|
124
|
+
flat_connector:
|
|
125
|
+
summary: Flat connector with one version
|
|
126
|
+
value:
|
|
127
|
+
name: Acme API
|
|
128
|
+
baseURIs:
|
|
129
|
+
- https://api.acme.com
|
|
130
|
+
versions:
|
|
131
|
+
- name: v1
|
|
132
|
+
published: true
|
|
133
|
+
supportedBy:
|
|
134
|
+
connection:
|
|
135
|
+
preConfiguredFields:
|
|
136
|
+
- path: type
|
|
137
|
+
values:
|
|
138
|
+
- http
|
|
139
|
+
responses:
|
|
140
|
+
'201':
|
|
141
|
+
description: HTTP Connector created successfully.
|
|
142
|
+
content:
|
|
143
|
+
application/json:
|
|
144
|
+
schema:
|
|
145
|
+
$ref: '#/components/schemas/HTTPConnector'
|
|
146
|
+
examples:
|
|
147
|
+
created:
|
|
148
|
+
summary: Created connector (detail shape)
|
|
149
|
+
value:
|
|
150
|
+
_id: 63987132784a39b73aae63cd
|
|
151
|
+
_userId: 6316f2b1e37e79778a43391c
|
|
152
|
+
name: 15Five
|
|
153
|
+
createdAt: '2023-01-17T09:51:46.326Z'
|
|
154
|
+
lastModified: '2023-01-17T09:51:46.326Z'
|
|
155
|
+
published: true
|
|
156
|
+
isGraphQL: false
|
|
157
|
+
requireBodyMatchForLinking: false
|
|
158
|
+
disableAutoLinking: false
|
|
159
|
+
baseURIs:
|
|
160
|
+
- https://my.15five.com
|
|
161
|
+
helpURL: https://docs.celigo.com/hc/en-us/articles/4411468706203
|
|
162
|
+
legacyId: 15five
|
|
163
|
+
versions:
|
|
164
|
+
- _id: 63987132784a39b73aae63ce
|
|
165
|
+
name: v1
|
|
166
|
+
published: true
|
|
167
|
+
supportedBy: {}
|
|
168
|
+
apis: []
|
|
169
|
+
supportedBy:
|
|
170
|
+
export:
|
|
171
|
+
preConfiguredFields:
|
|
172
|
+
- path: successMediaType
|
|
173
|
+
values:
|
|
174
|
+
- json
|
|
175
|
+
connection:
|
|
176
|
+
preConfiguredFields:
|
|
177
|
+
- path: type
|
|
178
|
+
values:
|
|
179
|
+
- http
|
|
180
|
+
'400':
|
|
181
|
+
$ref: '#/components/responses/400-bad-request'
|
|
182
|
+
'401':
|
|
183
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
184
|
+
'403':
|
|
185
|
+
$ref: '#/components/responses/403-forbidden'
|
|
186
|
+
'422':
|
|
187
|
+
$ref: '#/components/responses/422-unprocessable-entity'
|
|
188
|
+
/v1/httpconnectors/{_id}:
|
|
189
|
+
get:
|
|
190
|
+
x-internal: false
|
|
191
|
+
operationId: getHttpConnectorById
|
|
192
|
+
tags:
|
|
193
|
+
- HTTP Connectors
|
|
194
|
+
summary: Get an HTTP connector
|
|
195
|
+
description: |-
|
|
196
|
+
Retrieves the full HTTP Connector object including `published`,
|
|
197
|
+
`baseURIs`, `supportedBy`, and version details omitted from the
|
|
198
|
+
list endpoint.
|
|
199
|
+
parameters:
|
|
200
|
+
- in: path
|
|
201
|
+
name: _id
|
|
202
|
+
required: true
|
|
203
|
+
schema:
|
|
204
|
+
type: string
|
|
205
|
+
format: objectId
|
|
206
|
+
description: HTTP Connector ID.
|
|
207
|
+
responses:
|
|
208
|
+
'200':
|
|
209
|
+
description: HTTP Connector retrieved successfully.
|
|
210
|
+
content:
|
|
211
|
+
application/json:
|
|
212
|
+
schema:
|
|
213
|
+
$ref: '#/components/schemas/HTTPConnector'
|
|
214
|
+
examples:
|
|
215
|
+
detail:
|
|
216
|
+
value:
|
|
217
|
+
_id: 63987132784a39b73aae63cd
|
|
218
|
+
_userId: 6316f2b1e37e79778a43391c
|
|
219
|
+
name: 15Five
|
|
220
|
+
createdAt: '2023-01-17T09:51:46.326Z'
|
|
221
|
+
lastModified: '2025-09-02T09:15:49.168Z'
|
|
222
|
+
published: true
|
|
223
|
+
isGraphQL: false
|
|
224
|
+
requireBodyMatchForLinking: false
|
|
225
|
+
disableAutoLinking: false
|
|
226
|
+
baseURIs:
|
|
227
|
+
- https://my.15five.com
|
|
228
|
+
helpURL: https://docs.celigo.com/hc/en-us/articles/4411468706203
|
|
229
|
+
legacyId: 15five
|
|
230
|
+
versions:
|
|
231
|
+
- _id: 63987132784a39b73aae63ce
|
|
232
|
+
name: v1
|
|
233
|
+
published: true
|
|
234
|
+
supportedBy: {}
|
|
235
|
+
apis: []
|
|
236
|
+
supportedBy:
|
|
237
|
+
export:
|
|
238
|
+
preConfiguredFields:
|
|
239
|
+
- path: successMediaType
|
|
240
|
+
values:
|
|
241
|
+
- json
|
|
242
|
+
connection:
|
|
243
|
+
preConfiguredFields:
|
|
244
|
+
- path: type
|
|
245
|
+
values:
|
|
246
|
+
- http
|
|
247
|
+
'401':
|
|
248
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
249
|
+
'403':
|
|
250
|
+
$ref: '#/components/responses/403-forbidden'
|
|
251
|
+
'404':
|
|
252
|
+
$ref: '#/components/responses/404-not-found'
|
|
253
|
+
put:
|
|
254
|
+
x-internal: false
|
|
255
|
+
operationId: updateHttpConnector
|
|
256
|
+
tags:
|
|
257
|
+
- HTTP Connectors
|
|
258
|
+
summary: Update an HTTP connector
|
|
259
|
+
description: Replaces the HTTP Connector with the provided fields.
|
|
260
|
+
parameters:
|
|
261
|
+
- in: path
|
|
262
|
+
name: _id
|
|
263
|
+
required: true
|
|
264
|
+
schema:
|
|
265
|
+
type: string
|
|
266
|
+
format: objectId
|
|
267
|
+
description: HTTP Connector ID.
|
|
268
|
+
requestBody:
|
|
269
|
+
required: true
|
|
270
|
+
content:
|
|
271
|
+
application/json:
|
|
272
|
+
schema:
|
|
273
|
+
$ref: '#/components/schemas/Request'
|
|
274
|
+
examples:
|
|
275
|
+
full_replace:
|
|
276
|
+
summary: Full replace disabling auto-linking
|
|
277
|
+
value:
|
|
278
|
+
name: 15Five
|
|
279
|
+
published: true
|
|
280
|
+
isGraphQL: false
|
|
281
|
+
requireBodyMatchForLinking: false
|
|
282
|
+
disableAutoLinking: true
|
|
283
|
+
baseURIs:
|
|
284
|
+
- https://my.15five.com
|
|
285
|
+
helpURL: https://docs.celigo.com/hc/en-us/articles/4411468706203
|
|
286
|
+
legacyId: 15five
|
|
287
|
+
versions:
|
|
288
|
+
- name: v1
|
|
289
|
+
published: true
|
|
290
|
+
supportedBy:
|
|
291
|
+
export:
|
|
292
|
+
preConfiguredFields:
|
|
293
|
+
- path: successMediaType
|
|
294
|
+
values:
|
|
295
|
+
- json
|
|
296
|
+
connection:
|
|
297
|
+
preConfiguredFields:
|
|
298
|
+
- path: type
|
|
299
|
+
values:
|
|
300
|
+
- http
|
|
301
|
+
responses:
|
|
302
|
+
'200':
|
|
303
|
+
description: HTTP Connector updated successfully.
|
|
304
|
+
content:
|
|
305
|
+
application/json:
|
|
306
|
+
schema:
|
|
307
|
+
$ref: '#/components/schemas/HTTPConnector'
|
|
308
|
+
examples:
|
|
309
|
+
updated:
|
|
310
|
+
summary: Updated connector
|
|
311
|
+
value:
|
|
312
|
+
_id: 63987132784a39b73aae63cd
|
|
313
|
+
_userId: 6316f2b1e37e79778a43391c
|
|
314
|
+
name: 15Five
|
|
315
|
+
createdAt: '2023-01-17T09:51:46.326Z'
|
|
316
|
+
lastModified: '2025-09-10T11:42:17.553Z'
|
|
317
|
+
published: true
|
|
318
|
+
isGraphQL: false
|
|
319
|
+
requireBodyMatchForLinking: false
|
|
320
|
+
disableAutoLinking: true
|
|
321
|
+
baseURIs:
|
|
322
|
+
- https://my.15five.com
|
|
323
|
+
helpURL: https://docs.celigo.com/hc/en-us/articles/4411468706203
|
|
324
|
+
legacyId: 15five
|
|
325
|
+
versions:
|
|
326
|
+
- _id: 63987132784a39b73aae63ce
|
|
327
|
+
name: v1
|
|
328
|
+
published: true
|
|
329
|
+
supportedBy: {}
|
|
330
|
+
apis: []
|
|
331
|
+
supportedBy:
|
|
332
|
+
export:
|
|
333
|
+
preConfiguredFields:
|
|
334
|
+
- path: successMediaType
|
|
335
|
+
values:
|
|
336
|
+
- json
|
|
337
|
+
connection:
|
|
338
|
+
preConfiguredFields:
|
|
339
|
+
- path: type
|
|
340
|
+
values:
|
|
341
|
+
- http
|
|
342
|
+
'400':
|
|
343
|
+
$ref: '#/components/responses/400-bad-request'
|
|
344
|
+
'401':
|
|
345
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
346
|
+
'403':
|
|
347
|
+
$ref: '#/components/responses/403-forbidden'
|
|
348
|
+
'404':
|
|
349
|
+
$ref: '#/components/responses/404-not-found'
|
|
350
|
+
'422':
|
|
351
|
+
$ref: '#/components/responses/422-unprocessable-entity'
|
|
352
|
+
delete:
|
|
353
|
+
x-internal: false
|
|
354
|
+
operationId: deleteHttpConnector
|
|
355
|
+
tags:
|
|
356
|
+
- HTTP Connectors
|
|
357
|
+
summary: Delete an HTTP connector
|
|
358
|
+
description: |-
|
|
359
|
+
Permanently deletes an HTTP Connector and all its child resources
|
|
360
|
+
and endpoints.
|
|
361
|
+
parameters:
|
|
362
|
+
- in: path
|
|
363
|
+
name: _id
|
|
364
|
+
required: true
|
|
365
|
+
schema:
|
|
366
|
+
type: string
|
|
367
|
+
format: objectId
|
|
368
|
+
description: HTTP Connector ID.
|
|
369
|
+
responses:
|
|
370
|
+
'204':
|
|
371
|
+
description: HTTP Connector deleted successfully.
|
|
372
|
+
'401':
|
|
373
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
374
|
+
'403':
|
|
375
|
+
$ref: '#/components/responses/403-forbidden'
|
|
376
|
+
'404':
|
|
377
|
+
$ref: '#/components/responses/404-not-found'
|
|
378
|
+
/v1/httpconnectors/{_id}/catalog:
|
|
379
|
+
get:
|
|
380
|
+
x-internal: false
|
|
381
|
+
operationId: getHttpConnectorCatalog
|
|
382
|
+
tags:
|
|
383
|
+
- HTTP Connectors
|
|
384
|
+
summary: Get form metadata catalog
|
|
385
|
+
description: |-
|
|
386
|
+
Returns projected resource and endpoint summaries for one import or export
|
|
387
|
+
plane. Import catalogs may include derived `ignoreExisting`, `ignoreMissing`,
|
|
388
|
+
and `isIdentifierPresent` flags on endpoints. Export catalogs return
|
|
389
|
+
endpoint `{ id, name }` only. Published-only requests may be served from
|
|
390
|
+
the MongoDB catalog cache and include an `X-Catalog-Cache` response header.
|
|
391
|
+
parameters:
|
|
392
|
+
- in: path
|
|
393
|
+
name: _id
|
|
394
|
+
required: true
|
|
395
|
+
schema:
|
|
396
|
+
type: string
|
|
397
|
+
format: objectId
|
|
398
|
+
x-celigo-refModel: httpconnectors
|
|
399
|
+
examples:
|
|
400
|
+
- 63987132784a39b73aae63cd
|
|
401
|
+
description: HTTP Connector ID.
|
|
402
|
+
- name: resourceType
|
|
403
|
+
in: query
|
|
404
|
+
required: true
|
|
405
|
+
schema:
|
|
406
|
+
type: string
|
|
407
|
+
enum:
|
|
408
|
+
- export
|
|
409
|
+
- import
|
|
410
|
+
x-enumDescriptions:
|
|
411
|
+
export: Return export-plane resources and endpoints
|
|
412
|
+
import: Return import-plane resources and endpoints
|
|
413
|
+
description: Resource plane to project.
|
|
414
|
+
- name: blob
|
|
415
|
+
in: query
|
|
416
|
+
required: true
|
|
417
|
+
schema:
|
|
418
|
+
type: string
|
|
419
|
+
enum:
|
|
420
|
+
- 'true'
|
|
421
|
+
- 'false'
|
|
422
|
+
x-enumDescriptions:
|
|
423
|
+
'true': Only blob endpoints match
|
|
424
|
+
'false': Only non-blob endpoints match
|
|
425
|
+
description: Selects the blob or non-blob endpoint plane.
|
|
426
|
+
- name: api
|
|
427
|
+
in: query
|
|
428
|
+
required: false
|
|
429
|
+
schema:
|
|
430
|
+
type: string
|
|
431
|
+
format: objectId
|
|
432
|
+
examples:
|
|
433
|
+
- 6a1b2c3d4e5f6789abcdef02
|
|
434
|
+
description: Optional API group scope filter.
|
|
435
|
+
- name: version
|
|
436
|
+
in: query
|
|
437
|
+
required: false
|
|
438
|
+
schema:
|
|
439
|
+
type: string
|
|
440
|
+
format: objectId
|
|
441
|
+
examples:
|
|
442
|
+
- 63987132784a39b73aae63ce
|
|
443
|
+
description: Optional version scope filter.
|
|
444
|
+
- name: publishedOnly
|
|
445
|
+
in: query
|
|
446
|
+
required: false
|
|
447
|
+
schema:
|
|
448
|
+
type: string
|
|
449
|
+
enum:
|
|
450
|
+
- 'true'
|
|
451
|
+
- 'false'
|
|
452
|
+
x-enumDescriptions:
|
|
453
|
+
'true': Only published connector, resource, and endpoint documents are returned
|
|
454
|
+
'false': Unpublished documents may be returned
|
|
455
|
+
description: |-
|
|
456
|
+
When `true`, only published documents are returned and eligible requests
|
|
457
|
+
may be served from the catalog cache.
|
|
458
|
+
responses:
|
|
459
|
+
'200':
|
|
460
|
+
description: Form metadata catalog retrieved successfully.
|
|
461
|
+
headers:
|
|
462
|
+
X-Catalog-Cache:
|
|
463
|
+
description: |-
|
|
464
|
+
Catalog cache status for eligible published-only requests. Absent
|
|
465
|
+
when the request is not cache-eligible.
|
|
466
|
+
schema:
|
|
467
|
+
type: string
|
|
468
|
+
enum:
|
|
469
|
+
- hit
|
|
470
|
+
- miss
|
|
471
|
+
x-enumDescriptions:
|
|
472
|
+
hit: Response body was served from the MongoDB catalog cache
|
|
473
|
+
miss: Response body was built from source collections
|
|
474
|
+
content:
|
|
475
|
+
application/json:
|
|
476
|
+
schema:
|
|
477
|
+
$ref: '#/components/schemas/HTTPConnectorCatalogResponse'
|
|
478
|
+
examples:
|
|
479
|
+
export_catalog:
|
|
480
|
+
summary: Export-plane catalog
|
|
481
|
+
value:
|
|
482
|
+
resources:
|
|
483
|
+
- id: 63987132784a39b73aae63e7
|
|
484
|
+
name: Orders
|
|
485
|
+
endpoints:
|
|
486
|
+
- id: 63987132784a39b73aae63f1
|
|
487
|
+
name: Get orders
|
|
488
|
+
'400':
|
|
489
|
+
$ref: '#/components/responses/400-bad-request'
|
|
490
|
+
'401':
|
|
491
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
492
|
+
'404':
|
|
493
|
+
$ref: '#/components/responses/404-not-found'
|
|
494
|
+
/v1/httpconnectors/{_id}/resourceEndpointDetail:
|
|
495
|
+
get:
|
|
496
|
+
x-internal: false
|
|
497
|
+
operationId: getHttpConnectorResourceEndpointDetail
|
|
498
|
+
tags:
|
|
499
|
+
- HTTP Connectors
|
|
500
|
+
summary: Get resource and endpoint detail
|
|
501
|
+
description: |-
|
|
502
|
+
Returns scoped `httpConnectorResource` and `httpConnectorEndpoint`
|
|
503
|
+
documents for a single export/import endpoint, or a paired import
|
|
504
|
+
create/update batch. Lookup endpoints may be inlined when they are
|
|
505
|
+
published and belong to the same connector. `endpointId` and
|
|
506
|
+
`endpointIds` are mutually exclusive; `endpointIds` is only valid when
|
|
507
|
+
`resourceType` is `import` and must contain exactly two comma-separated
|
|
508
|
+
ObjectIds. Composite `id1+id2` values are rejected.
|
|
509
|
+
parameters:
|
|
510
|
+
- in: path
|
|
511
|
+
name: _id
|
|
512
|
+
required: true
|
|
513
|
+
schema:
|
|
514
|
+
type: string
|
|
515
|
+
format: objectId
|
|
516
|
+
x-celigo-refModel: httpconnectors
|
|
517
|
+
examples:
|
|
518
|
+
- 63987132784a39b73aae63cd
|
|
519
|
+
description: HTTP Connector ID.
|
|
520
|
+
- name: resourceType
|
|
521
|
+
in: query
|
|
522
|
+
required: true
|
|
523
|
+
schema:
|
|
524
|
+
type: string
|
|
525
|
+
enum:
|
|
526
|
+
- export
|
|
527
|
+
- import
|
|
528
|
+
x-enumDescriptions:
|
|
529
|
+
export: Resolve an export-plane resource and endpoint
|
|
530
|
+
import: Resolve an import-plane resource and endpoint
|
|
531
|
+
description: Resource plane to resolve.
|
|
532
|
+
- name: resourceId
|
|
533
|
+
in: query
|
|
534
|
+
required: true
|
|
535
|
+
schema:
|
|
536
|
+
type: string
|
|
537
|
+
format: objectId
|
|
538
|
+
examples:
|
|
539
|
+
- 63987132784a39b73aae63e7
|
|
540
|
+
description: HTTP Connector Resource ID that belongs to this connector.
|
|
541
|
+
- name: blob
|
|
542
|
+
in: query
|
|
543
|
+
required: true
|
|
544
|
+
schema:
|
|
545
|
+
type: string
|
|
546
|
+
enum:
|
|
547
|
+
- 'true'
|
|
548
|
+
- 'false'
|
|
549
|
+
x-enumDescriptions:
|
|
550
|
+
'true': Only blob endpoints match
|
|
551
|
+
'false': Only non-blob endpoints match
|
|
552
|
+
description: Selects the blob or non-blob endpoint plane.
|
|
553
|
+
- name: endpointId
|
|
554
|
+
in: query
|
|
555
|
+
required: false
|
|
556
|
+
schema:
|
|
557
|
+
type: string
|
|
558
|
+
format: objectId
|
|
559
|
+
examples:
|
|
560
|
+
- 63987132784a39b73aae63f1
|
|
561
|
+
description: Single endpoint ID. Mutually exclusive with `endpointIds`.
|
|
562
|
+
- name: endpointIds
|
|
563
|
+
in: query
|
|
564
|
+
required: false
|
|
565
|
+
schema:
|
|
566
|
+
type: string
|
|
567
|
+
examples:
|
|
568
|
+
- 63987132784a39b73aae63f1,63987132784a39b73aae63f2
|
|
569
|
+
description: |-
|
|
570
|
+
Comma-separated pair of import endpoint IDs for create/update batch
|
|
571
|
+
mode. Import only; exactly two unique IDs. Mutually exclusive with
|
|
572
|
+
`endpointId`.
|
|
573
|
+
- name: api
|
|
574
|
+
in: query
|
|
575
|
+
required: false
|
|
576
|
+
schema:
|
|
577
|
+
type: string
|
|
578
|
+
format: objectId
|
|
579
|
+
examples:
|
|
580
|
+
- 6a1b2c3d4e5f6789abcdef02
|
|
581
|
+
description: Optional API group scope filter.
|
|
582
|
+
- name: version
|
|
583
|
+
in: query
|
|
584
|
+
required: false
|
|
585
|
+
schema:
|
|
586
|
+
type: string
|
|
587
|
+
format: objectId
|
|
588
|
+
examples:
|
|
589
|
+
- 63987132784a39b73aae63ce
|
|
590
|
+
description: Optional version scope filter; echoed as `resolvedVersionId` when present.
|
|
591
|
+
- name: publishedOnly
|
|
592
|
+
in: query
|
|
593
|
+
required: false
|
|
594
|
+
schema:
|
|
595
|
+
type: string
|
|
596
|
+
enum:
|
|
597
|
+
- 'true'
|
|
598
|
+
- 'false'
|
|
599
|
+
x-enumDescriptions:
|
|
600
|
+
'true': Only published connector, resource, and endpoint documents are returned
|
|
601
|
+
'false': Unpublished documents may be returned
|
|
602
|
+
description: When `true`, only published documents are returned.
|
|
603
|
+
responses:
|
|
604
|
+
'200':
|
|
605
|
+
description: Resource and endpoint detail retrieved successfully.
|
|
606
|
+
content:
|
|
607
|
+
application/json:
|
|
608
|
+
schema:
|
|
609
|
+
$ref: '#/components/schemas/ResourceEndpointDetail'
|
|
610
|
+
examples:
|
|
611
|
+
single_export:
|
|
612
|
+
summary: Single export endpoint
|
|
613
|
+
value:
|
|
614
|
+
resolvedResourceId: 63987132784a39b73aae63e7
|
|
615
|
+
resolvedEndpointId: 63987132784a39b73aae63f1
|
|
616
|
+
httpConnectorResource:
|
|
617
|
+
_id: 63987132784a39b73aae63e7
|
|
618
|
+
name: Orders
|
|
619
|
+
httpConnectorEndpoint:
|
|
620
|
+
_id: 63987132784a39b73aae63f1
|
|
621
|
+
name: Get orders
|
|
622
|
+
import_batch:
|
|
623
|
+
summary: Import create/update batch
|
|
624
|
+
value:
|
|
625
|
+
resolvedResourceId: 63987132784a39b73aae63e7
|
|
626
|
+
resolvedEndpointIds:
|
|
627
|
+
- 63987132784a39b73aae63f1
|
|
628
|
+
- 63987132784a39b73aae63f2
|
|
629
|
+
httpConnectorResource:
|
|
630
|
+
_id: 63987132784a39b73aae63e7
|
|
631
|
+
name: Orders
|
|
632
|
+
httpConnectorEndpoints:
|
|
633
|
+
- _id: 63987132784a39b73aae63f1
|
|
634
|
+
name: Create order
|
|
635
|
+
- _id: 63987132784a39b73aae63f2
|
|
636
|
+
name: Update order
|
|
637
|
+
'400':
|
|
638
|
+
$ref: '#/components/responses/400-bad-request'
|
|
639
|
+
'401':
|
|
640
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
641
|
+
'404':
|
|
642
|
+
$ref: '#/components/responses/404-not-found'
|
|
643
|
+
/api/httpconnectors/{_id}/catalog:
|
|
644
|
+
get:
|
|
645
|
+
x-internal: false
|
|
646
|
+
operationId: getHttpConnectorCatalog
|
|
647
|
+
tags:
|
|
648
|
+
- HTTP Connectors
|
|
649
|
+
summary: Get form metadata catalog
|
|
650
|
+
description: |-
|
|
651
|
+
Returns projected resource and endpoint summaries for one import or export
|
|
652
|
+
plane. Import catalogs may include derived `ignoreExisting`, `ignoreMissing`,
|
|
653
|
+
and `isIdentifierPresent` flags on endpoints. Export catalogs return
|
|
654
|
+
endpoint `{ id, name }` only. Published-only requests may be served from
|
|
655
|
+
the MongoDB catalog cache and include an `X-Catalog-Cache` response header.
|
|
656
|
+
parameters:
|
|
657
|
+
- in: path
|
|
658
|
+
name: _id
|
|
659
|
+
required: true
|
|
660
|
+
schema:
|
|
661
|
+
type: string
|
|
662
|
+
format: objectId
|
|
663
|
+
x-celigo-refModel: httpconnectors
|
|
664
|
+
examples:
|
|
665
|
+
- 63987132784a39b73aae63cd
|
|
666
|
+
description: HTTP Connector ID.
|
|
667
|
+
- name: resourceType
|
|
668
|
+
in: query
|
|
669
|
+
required: true
|
|
670
|
+
schema:
|
|
671
|
+
type: string
|
|
672
|
+
enum:
|
|
673
|
+
- export
|
|
674
|
+
- import
|
|
675
|
+
x-enumDescriptions:
|
|
676
|
+
export: Return export-plane resources and endpoints
|
|
677
|
+
import: Return import-plane resources and endpoints
|
|
678
|
+
description: Resource plane to project.
|
|
679
|
+
- name: blob
|
|
680
|
+
in: query
|
|
681
|
+
required: true
|
|
682
|
+
schema:
|
|
683
|
+
type: string
|
|
684
|
+
enum:
|
|
685
|
+
- 'true'
|
|
686
|
+
- 'false'
|
|
687
|
+
x-enumDescriptions:
|
|
688
|
+
'true': Only blob endpoints match
|
|
689
|
+
'false': Only non-blob endpoints match
|
|
690
|
+
description: Selects the blob or non-blob endpoint plane.
|
|
691
|
+
- name: api
|
|
692
|
+
in: query
|
|
693
|
+
required: false
|
|
694
|
+
schema:
|
|
695
|
+
type: string
|
|
696
|
+
format: objectId
|
|
697
|
+
examples:
|
|
698
|
+
- 6a1b2c3d4e5f6789abcdef02
|
|
699
|
+
description: Optional API group scope filter.
|
|
700
|
+
- name: version
|
|
701
|
+
in: query
|
|
702
|
+
required: false
|
|
703
|
+
schema:
|
|
704
|
+
type: string
|
|
705
|
+
format: objectId
|
|
706
|
+
examples:
|
|
707
|
+
- 63987132784a39b73aae63ce
|
|
708
|
+
description: Optional version scope filter.
|
|
709
|
+
- name: publishedOnly
|
|
710
|
+
in: query
|
|
711
|
+
required: false
|
|
712
|
+
schema:
|
|
713
|
+
type: string
|
|
714
|
+
enum:
|
|
715
|
+
- 'true'
|
|
716
|
+
- 'false'
|
|
717
|
+
x-enumDescriptions:
|
|
718
|
+
'true': Only published connector, resource, and endpoint documents are returned
|
|
719
|
+
'false': Unpublished documents may be returned
|
|
720
|
+
description: |-
|
|
721
|
+
When `true`, only published documents are returned and eligible requests
|
|
722
|
+
may be served from the catalog cache.
|
|
723
|
+
responses:
|
|
724
|
+
'200':
|
|
725
|
+
description: Form metadata catalog retrieved successfully.
|
|
726
|
+
headers:
|
|
727
|
+
X-Catalog-Cache:
|
|
728
|
+
description: |-
|
|
729
|
+
Catalog cache status for eligible published-only requests. Absent
|
|
730
|
+
when the request is not cache-eligible.
|
|
731
|
+
schema:
|
|
732
|
+
type: string
|
|
733
|
+
enum:
|
|
734
|
+
- hit
|
|
735
|
+
- miss
|
|
736
|
+
x-enumDescriptions:
|
|
737
|
+
hit: Response body was served from the MongoDB catalog cache
|
|
738
|
+
miss: Response body was built from source collections
|
|
739
|
+
content:
|
|
740
|
+
application/json:
|
|
741
|
+
schema:
|
|
742
|
+
$ref: '#/components/schemas/HTTPConnectorCatalogResponse'
|
|
743
|
+
examples:
|
|
744
|
+
export_catalog:
|
|
745
|
+
summary: Export-plane catalog
|
|
746
|
+
value:
|
|
747
|
+
resources:
|
|
748
|
+
- id: 63987132784a39b73aae63e7
|
|
749
|
+
name: Orders
|
|
750
|
+
endpoints:
|
|
751
|
+
- id: 63987132784a39b73aae63f1
|
|
752
|
+
name: Get orders
|
|
753
|
+
'400':
|
|
754
|
+
$ref: '#/components/responses/400-bad-request'
|
|
755
|
+
'401':
|
|
756
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
757
|
+
'404':
|
|
758
|
+
$ref: '#/components/responses/404-not-found'
|
|
759
|
+
/api/httpconnectors/{_id}/resourceEndpointDetail:
|
|
760
|
+
get:
|
|
761
|
+
x-internal: false
|
|
762
|
+
operationId: getHttpConnectorResourceEndpointDetail
|
|
763
|
+
tags:
|
|
764
|
+
- HTTP Connectors
|
|
765
|
+
summary: Get resource and endpoint detail
|
|
766
|
+
description: |-
|
|
767
|
+
Returns scoped `httpConnectorResource` and `httpConnectorEndpoint`
|
|
768
|
+
documents for a single export/import endpoint, or a paired import
|
|
769
|
+
create/update batch. Lookup endpoints may be inlined when they are
|
|
770
|
+
published and belong to the same connector. `endpointId` and
|
|
771
|
+
`endpointIds` are mutually exclusive; `endpointIds` is only valid when
|
|
772
|
+
`resourceType` is `import` and must contain exactly two comma-separated
|
|
773
|
+
ObjectIds. Composite `id1+id2` values are rejected.
|
|
774
|
+
parameters:
|
|
775
|
+
- in: path
|
|
776
|
+
name: _id
|
|
777
|
+
required: true
|
|
778
|
+
schema:
|
|
779
|
+
type: string
|
|
780
|
+
format: objectId
|
|
781
|
+
x-celigo-refModel: httpconnectors
|
|
782
|
+
examples:
|
|
783
|
+
- 63987132784a39b73aae63cd
|
|
784
|
+
description: HTTP Connector ID.
|
|
785
|
+
- name: resourceType
|
|
786
|
+
in: query
|
|
787
|
+
required: true
|
|
788
|
+
schema:
|
|
789
|
+
type: string
|
|
790
|
+
enum:
|
|
791
|
+
- export
|
|
792
|
+
- import
|
|
793
|
+
x-enumDescriptions:
|
|
794
|
+
export: Resolve an export-plane resource and endpoint
|
|
795
|
+
import: Resolve an import-plane resource and endpoint
|
|
796
|
+
description: Resource plane to resolve.
|
|
797
|
+
- name: resourceId
|
|
798
|
+
in: query
|
|
799
|
+
required: true
|
|
800
|
+
schema:
|
|
801
|
+
type: string
|
|
802
|
+
format: objectId
|
|
803
|
+
examples:
|
|
804
|
+
- 63987132784a39b73aae63e7
|
|
805
|
+
description: HTTP Connector Resource ID that belongs to this connector.
|
|
806
|
+
- name: blob
|
|
807
|
+
in: query
|
|
808
|
+
required: true
|
|
809
|
+
schema:
|
|
810
|
+
type: string
|
|
811
|
+
enum:
|
|
812
|
+
- 'true'
|
|
813
|
+
- 'false'
|
|
814
|
+
x-enumDescriptions:
|
|
815
|
+
'true': Only blob endpoints match
|
|
816
|
+
'false': Only non-blob endpoints match
|
|
817
|
+
description: Selects the blob or non-blob endpoint plane.
|
|
818
|
+
- name: endpointId
|
|
819
|
+
in: query
|
|
820
|
+
required: false
|
|
821
|
+
schema:
|
|
822
|
+
type: string
|
|
823
|
+
format: objectId
|
|
824
|
+
examples:
|
|
825
|
+
- 63987132784a39b73aae63f1
|
|
826
|
+
description: Single endpoint ID. Mutually exclusive with `endpointIds`.
|
|
827
|
+
- name: endpointIds
|
|
828
|
+
in: query
|
|
829
|
+
required: false
|
|
830
|
+
schema:
|
|
831
|
+
type: string
|
|
832
|
+
examples:
|
|
833
|
+
- 63987132784a39b73aae63f1,63987132784a39b73aae63f2
|
|
834
|
+
description: |-
|
|
835
|
+
Comma-separated pair of import endpoint IDs for create/update batch
|
|
836
|
+
mode. Import only; exactly two unique IDs. Mutually exclusive with
|
|
837
|
+
`endpointId`.
|
|
838
|
+
- name: api
|
|
839
|
+
in: query
|
|
840
|
+
required: false
|
|
841
|
+
schema:
|
|
842
|
+
type: string
|
|
843
|
+
format: objectId
|
|
844
|
+
examples:
|
|
845
|
+
- 6a1b2c3d4e5f6789abcdef02
|
|
846
|
+
description: Optional API group scope filter.
|
|
847
|
+
- name: version
|
|
848
|
+
in: query
|
|
849
|
+
required: false
|
|
850
|
+
schema:
|
|
851
|
+
type: string
|
|
852
|
+
format: objectId
|
|
853
|
+
examples:
|
|
854
|
+
- 63987132784a39b73aae63ce
|
|
855
|
+
description: Optional version scope filter; echoed as `resolvedVersionId` when present.
|
|
856
|
+
- name: publishedOnly
|
|
857
|
+
in: query
|
|
858
|
+
required: false
|
|
859
|
+
schema:
|
|
860
|
+
type: string
|
|
861
|
+
enum:
|
|
862
|
+
- 'true'
|
|
863
|
+
- 'false'
|
|
864
|
+
x-enumDescriptions:
|
|
865
|
+
'true': Only published connector, resource, and endpoint documents are returned
|
|
866
|
+
'false': Unpublished documents may be returned
|
|
867
|
+
description: When `true`, only published documents are returned.
|
|
868
|
+
responses:
|
|
869
|
+
'200':
|
|
870
|
+
description: Resource and endpoint detail retrieved successfully.
|
|
871
|
+
content:
|
|
872
|
+
application/json:
|
|
873
|
+
schema:
|
|
874
|
+
$ref: '#/components/schemas/ResourceEndpointDetail'
|
|
875
|
+
examples:
|
|
876
|
+
single_export:
|
|
877
|
+
summary: Single export endpoint
|
|
878
|
+
value:
|
|
879
|
+
resolvedResourceId: 63987132784a39b73aae63e7
|
|
880
|
+
resolvedEndpointId: 63987132784a39b73aae63f1
|
|
881
|
+
httpConnectorResource:
|
|
882
|
+
_id: 63987132784a39b73aae63e7
|
|
883
|
+
name: Orders
|
|
884
|
+
httpConnectorEndpoint:
|
|
885
|
+
_id: 63987132784a39b73aae63f1
|
|
886
|
+
name: Get orders
|
|
887
|
+
import_batch:
|
|
888
|
+
summary: Import create/update batch
|
|
889
|
+
value:
|
|
890
|
+
resolvedResourceId: 63987132784a39b73aae63e7
|
|
891
|
+
resolvedEndpointIds:
|
|
892
|
+
- 63987132784a39b73aae63f1
|
|
893
|
+
- 63987132784a39b73aae63f2
|
|
894
|
+
httpConnectorResource:
|
|
895
|
+
_id: 63987132784a39b73aae63e7
|
|
896
|
+
name: Orders
|
|
897
|
+
httpConnectorEndpoints:
|
|
898
|
+
- _id: 63987132784a39b73aae63f1
|
|
899
|
+
name: Create order
|
|
900
|
+
- _id: 63987132784a39b73aae63f2
|
|
901
|
+
name: Update order
|
|
902
|
+
'400':
|
|
903
|
+
$ref: '#/components/responses/400-bad-request'
|
|
904
|
+
'401':
|
|
905
|
+
$ref: '#/components/responses/401-unauthorized'
|
|
906
|
+
'404':
|
|
907
|
+
$ref: '#/components/responses/404-not-found'
|
|
908
|
+
components:
|
|
909
|
+
securitySchemes:
|
|
910
|
+
bearerAuth:
|
|
911
|
+
type: http
|
|
912
|
+
scheme: bearer
|
|
913
|
+
schemas:
|
|
914
|
+
ListItem:
|
|
915
|
+
type: object
|
|
916
|
+
description: |-
|
|
917
|
+
Abridged HTTP Connector returned in list responses. Omits `published`,
|
|
918
|
+
`baseURIs`, `supportedBy`, `apis`, `versioning`, and write-only fields
|
|
919
|
+
compared to the detail endpoint.
|
|
920
|
+
properties:
|
|
921
|
+
_id:
|
|
922
|
+
type: string
|
|
923
|
+
format: objectId
|
|
924
|
+
readOnly: true
|
|
925
|
+
x-celigo-refModel: httpconnectors
|
|
926
|
+
description: Unique identifier for the resource. Format is a 24-character hexadecimal string.
|
|
927
|
+
examples:
|
|
928
|
+
- 63987132784a39b73aae63cd
|
|
929
|
+
name:
|
|
930
|
+
type: string
|
|
931
|
+
description: Display name for this HTTP Connector.
|
|
932
|
+
examples:
|
|
933
|
+
- 15Five
|
|
934
|
+
_userId:
|
|
935
|
+
type: string
|
|
936
|
+
format: objectId
|
|
937
|
+
readOnly: true
|
|
938
|
+
x-celigo-refModel: users
|
|
939
|
+
description: User who created this connector.
|
|
940
|
+
examples:
|
|
941
|
+
- 6316f2b1e37e79778a43391c
|
|
942
|
+
createdAt:
|
|
943
|
+
type: string
|
|
944
|
+
format: date-time
|
|
945
|
+
readOnly: true
|
|
946
|
+
description: Timestamp when the resource was created. Set automatically and cannot be modified.
|
|
947
|
+
examples:
|
|
948
|
+
- '2023-01-17T09:51:46.326Z'
|
|
949
|
+
lastModified:
|
|
950
|
+
type: string
|
|
951
|
+
format: date-time
|
|
952
|
+
readOnly: true
|
|
953
|
+
description: Timestamp when the resource was last updated. Changes whenever any property is modified.
|
|
954
|
+
examples:
|
|
955
|
+
- '2025-09-02T09:15:49.168Z'
|
|
956
|
+
helpURL:
|
|
957
|
+
type: string
|
|
958
|
+
description: Documentation URL shown to users when configuring this connector.
|
|
959
|
+
examples:
|
|
960
|
+
- https://docs.celigo.com/hc/en-us/articles/4411468706203
|
|
961
|
+
legacyId:
|
|
962
|
+
type: string
|
|
963
|
+
description: Legacy assistant ID for backward compatibility.
|
|
964
|
+
examples:
|
|
965
|
+
- 15five
|
|
966
|
+
legacyIds:
|
|
967
|
+
type: array
|
|
968
|
+
description: All legacy assistant IDs associated with this connector.
|
|
969
|
+
items:
|
|
970
|
+
type: string
|
|
971
|
+
examples:
|
|
972
|
+
- 15five
|
|
973
|
+
readOnly: true
|
|
974
|
+
isGraphQL:
|
|
975
|
+
type: boolean
|
|
976
|
+
description: When true, this connector targets a GraphQL API.
|
|
977
|
+
supportsIClient:
|
|
978
|
+
type: boolean
|
|
979
|
+
readOnly: true
|
|
980
|
+
description: When true, this connector supports shared iClient credentials.
|
|
981
|
+
supportsWebhook:
|
|
982
|
+
type: boolean
|
|
983
|
+
readOnly: true
|
|
984
|
+
description: When true, this connector supports webhook-based exports.
|
|
985
|
+
hasBlobEndpoints:
|
|
986
|
+
type: boolean
|
|
987
|
+
readOnly: true
|
|
988
|
+
description: When true, at least one endpoint under this connector handles binary/blob data.
|
|
989
|
+
metadataLoadStrategy:
|
|
990
|
+
type: string
|
|
991
|
+
enum:
|
|
992
|
+
- staged
|
|
993
|
+
readOnly: true
|
|
994
|
+
x-enumDescriptions:
|
|
995
|
+
staged: Form metadata is loaded via catalog and resourceEndpointDetail routes
|
|
996
|
+
description: |-
|
|
997
|
+
Present only when the connector uses staged metadata loading. Omitted
|
|
998
|
+
when the stored strategy is `full`.
|
|
999
|
+
versions:
|
|
1000
|
+
type: array
|
|
1001
|
+
description: Connector versions, abridged to identifiers and names.
|
|
1002
|
+
items:
|
|
1003
|
+
type: object
|
|
1004
|
+
properties:
|
|
1005
|
+
_id:
|
|
1006
|
+
type: string
|
|
1007
|
+
format: objectId
|
|
1008
|
+
description: Unique identifier for this version.
|
|
1009
|
+
examples:
|
|
1010
|
+
- 63987132784a39b73aae63ce
|
|
1011
|
+
name:
|
|
1012
|
+
type: string
|
|
1013
|
+
description: Display name for this version (e.g. `v3`).
|
|
1014
|
+
examples:
|
|
1015
|
+
- v3
|
|
1016
|
+
apis:
|
|
1017
|
+
type: array
|
|
1018
|
+
description: API groups under this connector, abridged to identifiers, names, and versions.
|
|
1019
|
+
items:
|
|
1020
|
+
type: object
|
|
1021
|
+
properties:
|
|
1022
|
+
_id:
|
|
1023
|
+
type: string
|
|
1024
|
+
format: objectId
|
|
1025
|
+
description: Unique identifier for this API group.
|
|
1026
|
+
examples:
|
|
1027
|
+
- 6a1b2c3d4e5f6789abcdef02
|
|
1028
|
+
name:
|
|
1029
|
+
type: string
|
|
1030
|
+
description: Display name for this API group.
|
|
1031
|
+
examples:
|
|
1032
|
+
- Profit
|
|
1033
|
+
versions:
|
|
1034
|
+
type: array
|
|
1035
|
+
description: Versions available under this API group.
|
|
1036
|
+
items:
|
|
1037
|
+
type: object
|
|
1038
|
+
properties:
|
|
1039
|
+
_id:
|
|
1040
|
+
type: string
|
|
1041
|
+
format: objectId
|
|
1042
|
+
description: Unique identifier for this version.
|
|
1043
|
+
examples:
|
|
1044
|
+
- 6a1b2c3d4e5f6789abcdef03
|
|
1045
|
+
name:
|
|
1046
|
+
type: string
|
|
1047
|
+
description: Display name for this version (e.g. `v3`).
|
|
1048
|
+
examples:
|
|
1049
|
+
- v1
|
|
1050
|
+
Versioning:
|
|
1051
|
+
type: object
|
|
1052
|
+
description: |-
|
|
1053
|
+
Strategy for how API versions are passed in requests. Used at the
|
|
1054
|
+
connector level and per API group; both use the same shape.
|
|
1055
|
+
properties:
|
|
1056
|
+
location:
|
|
1057
|
+
type: string
|
|
1058
|
+
enum:
|
|
1059
|
+
- uri
|
|
1060
|
+
- query_parameter
|
|
1061
|
+
- header
|
|
1062
|
+
x-enumDescriptions:
|
|
1063
|
+
uri: Version identifier is embedded in the URI path.
|
|
1064
|
+
query_parameter: Version identifier is passed as a query parameter.
|
|
1065
|
+
header: Version identifier is passed in an HTTP header.
|
|
1066
|
+
description: Where the version identifier is placed in outgoing requests.
|
|
1067
|
+
headerName:
|
|
1068
|
+
type: string
|
|
1069
|
+
description: Header name when `location` is `header`.
|
|
1070
|
+
examples:
|
|
1071
|
+
- API-Version
|
|
1072
|
+
queryParameterName:
|
|
1073
|
+
type: string
|
|
1074
|
+
description: Query parameter name when `location` is `query_parameter`.
|
|
1075
|
+
examples:
|
|
1076
|
+
- api-version
|
|
1077
|
+
SupportedByPreConfiguredField:
|
|
1078
|
+
type: object
|
|
1079
|
+
description: A field automatically set to a predefined value on the target resource.
|
|
1080
|
+
properties:
|
|
1081
|
+
_id:
|
|
1082
|
+
type: string
|
|
1083
|
+
format: objectId
|
|
1084
|
+
readOnly: true
|
|
1085
|
+
description: Unique identifier for this field entry.
|
|
1086
|
+
examples:
|
|
1087
|
+
- 5f8d43a1b9e5a80011a35f2d
|
|
1088
|
+
path:
|
|
1089
|
+
type: string
|
|
1090
|
+
description: Dot-notation path of the field on the target resource.
|
|
1091
|
+
examples:
|
|
1092
|
+
- http.mediaType
|
|
1093
|
+
- http.ping.relativeURI
|
|
1094
|
+
- http.auth.type
|
|
1095
|
+
values:
|
|
1096
|
+
type: array
|
|
1097
|
+
description: |-
|
|
1098
|
+
Value(s) to assign. Typically a single-element array; entries may be
|
|
1099
|
+
any JSON type.
|
|
1100
|
+
_conditionIds:
|
|
1101
|
+
type: array
|
|
1102
|
+
description: Condition IDs that must be satisfied for this field to apply. If absent, always applies.
|
|
1103
|
+
items:
|
|
1104
|
+
type: string
|
|
1105
|
+
format: objectId
|
|
1106
|
+
examples:
|
|
1107
|
+
- 5f8d43a1b9e5a80011a35f2c
|
|
1108
|
+
SupportedByFieldUserMustSet:
|
|
1109
|
+
type: object
|
|
1110
|
+
description: A field the user must provide a value for when creating the target resource.
|
|
1111
|
+
properties:
|
|
1112
|
+
_id:
|
|
1113
|
+
type: string
|
|
1114
|
+
format: objectId
|
|
1115
|
+
readOnly: true
|
|
1116
|
+
description: Unique identifier for this field entry.
|
|
1117
|
+
examples:
|
|
1118
|
+
- 5f8d43a1b9e5a80011a35f2e
|
|
1119
|
+
path:
|
|
1120
|
+
type: string
|
|
1121
|
+
description: Dot-notation path of the field on the target resource.
|
|
1122
|
+
examples:
|
|
1123
|
+
- http.unencrypted.apiKey
|
|
1124
|
+
- http.baseURI
|
|
1125
|
+
- http.encrypted.password
|
|
1126
|
+
values:
|
|
1127
|
+
type: array
|
|
1128
|
+
description: |-
|
|
1129
|
+
Optional suggested or constrained values. Entries may be any JSON
|
|
1130
|
+
type.
|
|
1131
|
+
_conditionIds:
|
|
1132
|
+
type: array
|
|
1133
|
+
description: Condition IDs that must be satisfied for this field to apply.
|
|
1134
|
+
items:
|
|
1135
|
+
type: string
|
|
1136
|
+
format: objectId
|
|
1137
|
+
examples:
|
|
1138
|
+
- 5f8d43a1b9e5a80011a35f2c
|
|
1139
|
+
helpURL:
|
|
1140
|
+
type: string
|
|
1141
|
+
description: URL to documentation for this field.
|
|
1142
|
+
examples:
|
|
1143
|
+
- https://docs.celigo.com/hc/en-us
|
|
1144
|
+
labelOverride:
|
|
1145
|
+
type: string
|
|
1146
|
+
description: Custom label to display in the UI instead of the default.
|
|
1147
|
+
examples:
|
|
1148
|
+
- API Key
|
|
1149
|
+
inputType:
|
|
1150
|
+
type: string
|
|
1151
|
+
enum:
|
|
1152
|
+
- number
|
|
1153
|
+
- password
|
|
1154
|
+
- uri
|
|
1155
|
+
x-enumDescriptions:
|
|
1156
|
+
number: Renders a numeric input field.
|
|
1157
|
+
password: Renders a masked password input field.
|
|
1158
|
+
uri: Renders a URI input field with URL validation.
|
|
1159
|
+
description: |-
|
|
1160
|
+
UI input widget type shown when prompting the user for this field.
|
|
1161
|
+
Uses the same widget vocabulary as Trading Partner Connectors.
|
|
1162
|
+
examples:
|
|
1163
|
+
- password
|
|
1164
|
+
Filter:
|
|
1165
|
+
type: object
|
|
1166
|
+
description: |
|
|
1167
|
+
Configuration for selectively processing records based on specified criteria. This object enables
|
|
1168
|
+
precise control over which items are included or excluded from processing operations.
|
|
1169
|
+
|
|
1170
|
+
**Filter behavior**
|
|
1171
|
+
|
|
1172
|
+
When configured, the filter is applied before processing begins:
|
|
1173
|
+
- Items that match the filter criteria are processed
|
|
1174
|
+
- Items that don't match are completely skipped
|
|
1175
|
+
- No partial processing is performed
|
|
1176
|
+
|
|
1177
|
+
**Implementation approaches**
|
|
1178
|
+
|
|
1179
|
+
There are two distinct filtering mechanisms available:
|
|
1180
|
+
|
|
1181
|
+
**Rule-Based Filtering (`type: "expression"`)**
|
|
1182
|
+
- **Best For**: Common filtering patterns based on standard attributes
|
|
1183
|
+
- **Capabilities**: Filter by names, values, dates, numerical ranges, text patterns
|
|
1184
|
+
- **Advantages**: Declarative, no coding required, consistent performance
|
|
1185
|
+
- **Configuration**: Define rules in the `expression` object
|
|
1186
|
+
- **Use When**: You have clear, static criteria for selection
|
|
1187
|
+
|
|
1188
|
+
**Script-Based Filtering (`type: "script"`)**
|
|
1189
|
+
- **Best For**: Complex logic, dynamic criteria, or business rules
|
|
1190
|
+
- **Capabilities**: Full programmatic control, access to complete metadata
|
|
1191
|
+
- **Advantages**: Maximum flexibility, can implement any filtering logic
|
|
1192
|
+
- **Configuration**: Reference a script in the `script` object
|
|
1193
|
+
- **Use When**: Simple rules aren't sufficient or logic needs to be dynamic
|
|
1194
|
+
properties:
|
|
1195
|
+
type:
|
|
1196
|
+
type: string
|
|
1197
|
+
description: |
|
|
1198
|
+
Determines which filtering mechanism to use. This choice affects which properties
|
|
1199
|
+
must be configured and how filtering logic is implemented.
|
|
1200
|
+
|
|
1201
|
+
**Available types**
|
|
1202
|
+
|
|
1203
|
+
**Rule-Based Filtering (`"expression"`)**
|
|
1204
|
+
- **Required Config**: The `expression` object with rule definitions
|
|
1205
|
+
- **Behavior**: Evaluates declarative rules against item attributes
|
|
1206
|
+
- **Best For**: Common patterns like name matching, date ranges, value limits
|
|
1207
|
+
- **Advantages**: Simpler to configure, no custom code required
|
|
1208
|
+
|
|
1209
|
+
**Script-Based Filtering (`"script"`)**
|
|
1210
|
+
- **Required Config**: The `script` object with _scriptId and function
|
|
1211
|
+
- **Behavior**: Executes custom JavaScript to determine which items to process
|
|
1212
|
+
- **Best For**: Complex conditions, business logic, dynamic criteria
|
|
1213
|
+
- **Advantages**: Maximum flexibility, can implement any logic
|
|
1214
|
+
|
|
1215
|
+
**Implementation guidance**
|
|
1216
|
+
|
|
1217
|
+
1. For standard filtering needs (name, size, date), use `"expression"`
|
|
1218
|
+
2. For complex logic or conditions not covered by expressions, use `"script"`
|
|
1219
|
+
3. When selecting a type, you must configure the corresponding object:
|
|
1220
|
+
- `type: "expression"` requires the `expression` object
|
|
1221
|
+
- `type: "script"` requires the `script` object
|
|
1222
|
+
enum:
|
|
1223
|
+
- expression
|
|
1224
|
+
- script
|
|
1225
|
+
x-enumDescriptions:
|
|
1226
|
+
expression: Rule-based filtering using declarative conditions.
|
|
1227
|
+
script: Script-based filtering using custom JavaScript logic.
|
|
1228
|
+
examples:
|
|
1229
|
+
- expression
|
|
1230
|
+
- script
|
|
1231
|
+
expression:
|
|
1232
|
+
type: object
|
|
1233
|
+
description: |
|
|
1234
|
+
Configuration for declarative rule-based filtering. This object enables filtering
|
|
1235
|
+
items based on common attributes without requiring custom code.
|
|
1236
|
+
|
|
1237
|
+
**Usage context**
|
|
1238
|
+
|
|
1239
|
+
This object is REQUIRED when `filter.type` is set to "expression" and should not be
|
|
1240
|
+
configured otherwise. It provides a standardized way to define filtering rules that
|
|
1241
|
+
can match against item attributes like name, type, value, date, and other properties.
|
|
1242
|
+
|
|
1243
|
+
**Implementation guidance**
|
|
1244
|
+
|
|
1245
|
+
The expression system uses a rule-based approach where:
|
|
1246
|
+
- Rules can be combined with AND/OR logic
|
|
1247
|
+
- Each rule can check a specific attribute
|
|
1248
|
+
- Multiple conditions can be applied (ranges, pattern matching, exact matches)
|
|
1249
|
+
|
|
1250
|
+
**Common filter patterns**
|
|
1251
|
+
|
|
1252
|
+
1. **Pattern matching**: Using wildcards like `*` and `?`
|
|
1253
|
+
2. **Value range filtering**: Numbers between min and max values
|
|
1254
|
+
3. **Date range filtering**: Items created/modified within specific time ranges
|
|
1255
|
+
4. **Status checking**: Items with specific status values or properties
|
|
1256
|
+
|
|
1257
|
+
For AI agents: Rule-based filtering should be your first choice when the filtering criteria
|
|
1258
|
+
can be expressed in terms of standard attributes. Only use script-based filtering when
|
|
1259
|
+
more complex logic is required.
|
|
1260
|
+
properties:
|
|
1261
|
+
version:
|
|
1262
|
+
type: string
|
|
1263
|
+
description: |
|
|
1264
|
+
Version identifier for the expression format. Currently only version "1" is supported.
|
|
1265
|
+
|
|
1266
|
+
This field ensures future compatibility if the expression format evolves. Always set to "1"
|
|
1267
|
+
for current implementations.
|
|
1268
|
+
enum:
|
|
1269
|
+
- '1'
|
|
1270
|
+
x-enumDescriptions:
|
|
1271
|
+
'1': Current and only supported filter expression version.
|
|
1272
|
+
examples:
|
|
1273
|
+
- '1'
|
|
1274
|
+
rules:
|
|
1275
|
+
type: array
|
|
1276
|
+
description: |
|
|
1277
|
+
Expression array defining filter conditions using prefix notation. The first element is the operator,
|
|
1278
|
+
followed by its operands which may themselves be nested expression arrays.
|
|
1279
|
+
|
|
1280
|
+
The rule expression follows this pattern:
|
|
1281
|
+
- First element: Operator name (string)
|
|
1282
|
+
- Remaining elements: Operands for that operator (values or nested expressions)
|
|
1283
|
+
|
|
1284
|
+
**Expression structure**
|
|
1285
|
+
|
|
1286
|
+
Filter expressions use a prefix notation where operators appear before their operands:
|
|
1287
|
+
```
|
|
1288
|
+
[operator, operand1, operand2, ...]
|
|
1289
|
+
```
|
|
1290
|
+
|
|
1291
|
+
**Comparison Operators**
|
|
1292
|
+
- `"equals"`: Exact match (equals)
|
|
1293
|
+
- `"notequals"`: Not equal to value (not equals)
|
|
1294
|
+
- `"greaterthan"`: Value is greater than specified value (is greater than)
|
|
1295
|
+
- `"greaterthanequals"`: Value is greater than or equal to specified value (is greater than or equals)
|
|
1296
|
+
- `"lessthan"`: Value is less than specified value (is less than)
|
|
1297
|
+
- `"lessthanequals"`: Value is less than or equal to specified value (is less than or equals)
|
|
1298
|
+
- `"startswith"`: String starts with specified prefix (starts with)
|
|
1299
|
+
- `"endswith"`: String ends with specified suffix (ends with)
|
|
1300
|
+
- `"contains"`: String contains specified substring (contains)
|
|
1301
|
+
- `"doesnotcontain"`: String does not contain specified substring (does not contain)
|
|
1302
|
+
- `"isempty"`: Field is empty or null (is empty)
|
|
1303
|
+
- `"isnotempty"`: Field contains a value (is not empty)
|
|
1304
|
+
- `"matches"`: Matches specified pattern (matches)
|
|
1305
|
+
|
|
1306
|
+
**Logical Operators**
|
|
1307
|
+
- `"and"`: All conditions must be true
|
|
1308
|
+
- `"or"`: At least one condition must be true
|
|
1309
|
+
- `"not"`: Negates the condition
|
|
1310
|
+
|
|
1311
|
+
**Field Access and Type Conversion**
|
|
1312
|
+
- `"extract"`: Access a field from the item by name
|
|
1313
|
+
- `"settings"`: Access a custom setting from the flow, flow step, or integration configuration
|
|
1314
|
+
- `"boolean"`: Convert value to Boolean type
|
|
1315
|
+
- `"epochtime"`: Convert value to Epoch Time (Unix timestamp)
|
|
1316
|
+
- `"number"`: Convert value to Number type
|
|
1317
|
+
- `"string"`: Convert value to String type
|
|
1318
|
+
|
|
1319
|
+
**Field Access Details**
|
|
1320
|
+
|
|
1321
|
+
**Using `extract` to access record fields:**
|
|
1322
|
+
- Retrieves values from the current record being processed
|
|
1323
|
+
- Can access nested properties using dot notation (e.g., `"customer.email"`)
|
|
1324
|
+
- Returns the raw field value which may need type conversion
|
|
1325
|
+
|
|
1326
|
+
**Using `settings` to access configuration values:**
|
|
1327
|
+
- Retrieves values from the integration's configuration settings
|
|
1328
|
+
- Supports different scopes with prefix notation:
|
|
1329
|
+
- `flow.settingName`: Access flow-level settings
|
|
1330
|
+
- `export.settingName`: Access export-level settings
|
|
1331
|
+
- `import.settingName`: Access import-level settings
|
|
1332
|
+
- `integration.settingName`: Access integration-level settings
|
|
1333
|
+
- Useful for dynamic filtering based on configuration
|
|
1334
|
+
|
|
1335
|
+
**Field Transformations**
|
|
1336
|
+
- `"lowercase"`: Convert string to lowercase
|
|
1337
|
+
- `"uppercase"`: Convert string to uppercase
|
|
1338
|
+
- `"ceiling"`: Round number up to the nearest integer
|
|
1339
|
+
- `"floor"`: Round number down to the nearest integer
|
|
1340
|
+
- `"abs"`: Get absolute value of a number
|
|
1341
|
+
|
|
1342
|
+
Type conversion operators are often necessary when comparing extracted field values against literals or when the field type doesn't match the comparison operator's expected type. For example:
|
|
1343
|
+
|
|
1344
|
+
```json
|
|
1345
|
+
[
|
|
1346
|
+
"equals",
|
|
1347
|
+
[
|
|
1348
|
+
"number", // Convert to number before comparison
|
|
1349
|
+
[
|
|
1350
|
+
"extract",
|
|
1351
|
+
"quantity"
|
|
1352
|
+
]
|
|
1353
|
+
],
|
|
1354
|
+
100
|
|
1355
|
+
]
|
|
1356
|
+
```
|
|
1357
|
+
|
|
1358
|
+
Example with datetime conversion:
|
|
1359
|
+
```json
|
|
1360
|
+
[
|
|
1361
|
+
"greaterthan",
|
|
1362
|
+
[
|
|
1363
|
+
"epochtime", // Convert to Unix timestamp before comparison
|
|
1364
|
+
[
|
|
1365
|
+
"extract",
|
|
1366
|
+
"createdDate"
|
|
1367
|
+
]
|
|
1368
|
+
],
|
|
1369
|
+
1609459200000 // January 1, 2021 as Unix timestamp in milliseconds
|
|
1370
|
+
]
|
|
1371
|
+
```
|
|
1372
|
+
|
|
1373
|
+
Example with transformations:
|
|
1374
|
+
```json
|
|
1375
|
+
[
|
|
1376
|
+
"and",
|
|
1377
|
+
[
|
|
1378
|
+
"matches",
|
|
1379
|
+
[
|
|
1380
|
+
"lowercase", // Convert to lowercase before matching
|
|
1381
|
+
[
|
|
1382
|
+
"string",
|
|
1383
|
+
[
|
|
1384
|
+
"extract",
|
|
1385
|
+
"categories"
|
|
1386
|
+
]
|
|
1387
|
+
]
|
|
1388
|
+
],
|
|
1389
|
+
"netsuite"
|
|
1390
|
+
],
|
|
1391
|
+
[
|
|
1392
|
+
"notequals",
|
|
1393
|
+
[
|
|
1394
|
+
"string",
|
|
1395
|
+
[
|
|
1396
|
+
"extract",
|
|
1397
|
+
"recurrence.pattern.type"
|
|
1398
|
+
]
|
|
1399
|
+
],
|
|
1400
|
+
""
|
|
1401
|
+
]
|
|
1402
|
+
]
|
|
1403
|
+
```
|
|
1404
|
+
|
|
1405
|
+
Example comparing a record field with a flow setting:
|
|
1406
|
+
```json
|
|
1407
|
+
[
|
|
1408
|
+
"equals",
|
|
1409
|
+
[
|
|
1410
|
+
"string",
|
|
1411
|
+
[
|
|
1412
|
+
"extract",
|
|
1413
|
+
"trantype"
|
|
1414
|
+
]
|
|
1415
|
+
],
|
|
1416
|
+
[
|
|
1417
|
+
"string",
|
|
1418
|
+
[
|
|
1419
|
+
"settings",
|
|
1420
|
+
"flow.trantype"
|
|
1421
|
+
]
|
|
1422
|
+
]
|
|
1423
|
+
]
|
|
1424
|
+
```
|
|
1425
|
+
|
|
1426
|
+
**Examples**
|
|
1427
|
+
|
|
1428
|
+
Example 1: Status field is not equal to "cancelled"
|
|
1429
|
+
```json
|
|
1430
|
+
[
|
|
1431
|
+
"notequals",
|
|
1432
|
+
[
|
|
1433
|
+
"extract",
|
|
1434
|
+
"status"
|
|
1435
|
+
],
|
|
1436
|
+
"cancelled"
|
|
1437
|
+
]
|
|
1438
|
+
```
|
|
1439
|
+
|
|
1440
|
+
Example 2: Filename starts with "HC"
|
|
1441
|
+
```json
|
|
1442
|
+
[
|
|
1443
|
+
"startswith",
|
|
1444
|
+
[
|
|
1445
|
+
"extract",
|
|
1446
|
+
"filename"
|
|
1447
|
+
],
|
|
1448
|
+
"HC"
|
|
1449
|
+
]
|
|
1450
|
+
```
|
|
1451
|
+
|
|
1452
|
+
Example 3: Amount is greater than 100
|
|
1453
|
+
```json
|
|
1454
|
+
[
|
|
1455
|
+
"greaterthan",
|
|
1456
|
+
[
|
|
1457
|
+
"number",
|
|
1458
|
+
[
|
|
1459
|
+
"extract",
|
|
1460
|
+
"amount"
|
|
1461
|
+
]
|
|
1462
|
+
],
|
|
1463
|
+
100
|
|
1464
|
+
]
|
|
1465
|
+
```
|
|
1466
|
+
|
|
1467
|
+
Example 4: Order date is after January 1, 2023
|
|
1468
|
+
```json
|
|
1469
|
+
[
|
|
1470
|
+
"greaterthan",
|
|
1471
|
+
[
|
|
1472
|
+
"extract",
|
|
1473
|
+
"orderDate"
|
|
1474
|
+
],
|
|
1475
|
+
"2023-01-01T00:00:00Z"
|
|
1476
|
+
]
|
|
1477
|
+
```
|
|
1478
|
+
|
|
1479
|
+
Example 5: Category contains any of ["Urgent", "High Priority"]
|
|
1480
|
+
```json
|
|
1481
|
+
[
|
|
1482
|
+
"anyof",
|
|
1483
|
+
[
|
|
1484
|
+
"extract",
|
|
1485
|
+
"category"
|
|
1486
|
+
],
|
|
1487
|
+
["Urgent", "High Priority"]
|
|
1488
|
+
]
|
|
1489
|
+
```
|
|
1490
|
+
items:
|
|
1491
|
+
oneOf:
|
|
1492
|
+
- title: String
|
|
1493
|
+
type: string
|
|
1494
|
+
- title: Number
|
|
1495
|
+
type: number
|
|
1496
|
+
- title: Boolean
|
|
1497
|
+
type: boolean
|
|
1498
|
+
- title: Object
|
|
1499
|
+
type: object
|
|
1500
|
+
- title: Array
|
|
1501
|
+
type: array
|
|
1502
|
+
- title: 'Null'
|
|
1503
|
+
type: 'null'
|
|
1504
|
+
script:
|
|
1505
|
+
type: object
|
|
1506
|
+
description: |
|
|
1507
|
+
Configuration for programmable script-based filtering. This object enables complex, custom
|
|
1508
|
+
filtering logic beyond what expression-based filtering can provide.
|
|
1509
|
+
|
|
1510
|
+
**Usage context**
|
|
1511
|
+
|
|
1512
|
+
This object is REQUIRED when `filter.type` is set to "script" and should not be configured
|
|
1513
|
+
otherwise. It provides a way to execute custom JavaScript code to determine which items
|
|
1514
|
+
should be processed.
|
|
1515
|
+
|
|
1516
|
+
**Implementation approach**
|
|
1517
|
+
|
|
1518
|
+
Script-based filtering works by:
|
|
1519
|
+
1. Executing the specified function from the referenced script
|
|
1520
|
+
2. Passing item data to the function
|
|
1521
|
+
3. Using the function's return value (true/false) to determine inclusion
|
|
1522
|
+
|
|
1523
|
+
**Common use cases**
|
|
1524
|
+
|
|
1525
|
+
Script filtering is ideal for:
|
|
1526
|
+
- Complex business logic that can't be expressed as simple rules
|
|
1527
|
+
- Dynamic filtering criteria that change based on external factors
|
|
1528
|
+
- Content-based filtering that requires deep inspection
|
|
1529
|
+
- Advanced pattern matching beyond simple wildcards
|
|
1530
|
+
- Multi-stage filtering with intermediate logic
|
|
1531
|
+
|
|
1532
|
+
For AI agents: Only use script-based filtering when expression-based filtering is insufficient.
|
|
1533
|
+
Script filtering requires maintaining custom code, which adds complexity to the integration.
|
|
1534
|
+
properties:
|
|
1535
|
+
_scriptId:
|
|
1536
|
+
type: string
|
|
1537
|
+
x-celigo-refModel: scripts
|
|
1538
|
+
description: |
|
|
1539
|
+
Reference to the Script resource that contains the filtering logic. This must be a valid
|
|
1540
|
+
ObjectId of a Script resource that exists in the system.
|
|
1541
|
+
|
|
1542
|
+
The referenced script must contain the function specified in the `function` field
|
|
1543
|
+
and must be written to handle filtering specifically. The script receives
|
|
1544
|
+
item data as its input and must return a boolean value indicating whether
|
|
1545
|
+
to process the item (true) or skip it (false).
|
|
1546
|
+
|
|
1547
|
+
Format: 24-character hexadecimal string (MongoDB ObjectId)
|
|
1548
|
+
examples:
|
|
1549
|
+
- 60a2c4e6f321d800129a1a3c
|
|
1550
|
+
- 5f8d43a1b9e5a80011a35f2c
|
|
1551
|
+
function:
|
|
1552
|
+
type: string
|
|
1553
|
+
description: |
|
|
1554
|
+
Name of the function within the script to execute for filtering decisions. This function
|
|
1555
|
+
must exist in the script referenced by _scriptId.
|
|
1556
|
+
|
|
1557
|
+
**Function requirements**
|
|
1558
|
+
|
|
1559
|
+
The specified function must:
|
|
1560
|
+
- Accept item data as its first parameter
|
|
1561
|
+
- Return a boolean value (true to process the item, false to skip it)
|
|
1562
|
+
- Handle errors gracefully
|
|
1563
|
+
- Execute efficiently (as it may run for many items)
|
|
1564
|
+
|
|
1565
|
+
**Function signature**
|
|
1566
|
+
|
|
1567
|
+
```javascript
|
|
1568
|
+
function filterItems(itemData) {
|
|
1569
|
+
// itemData contains properties of the item being evaluated
|
|
1570
|
+
// Custom logic here
|
|
1571
|
+
return true; // or false to skip the item
|
|
1572
|
+
}
|
|
1573
|
+
```
|
|
1574
|
+
|
|
1575
|
+
For AI agents: Ensure the function name exactly matches a function defined in the
|
|
1576
|
+
referenced script, as mismatches will cause the filter to fail.
|
|
1577
|
+
examples:
|
|
1578
|
+
- filterItems
|
|
1579
|
+
- shouldProcess
|
|
1580
|
+
- evaluateMatch
|
|
1581
|
+
SupportedBySection:
|
|
1582
|
+
type: object
|
|
1583
|
+
description: |-
|
|
1584
|
+
Conditions, pre-configured field values, and fields the user must set
|
|
1585
|
+
for one resource type (connection, export, import, or iClient) when it
|
|
1586
|
+
is created from this connector. All four sections share this shape.
|
|
1587
|
+
properties:
|
|
1588
|
+
preConfiguredFields:
|
|
1589
|
+
type: array
|
|
1590
|
+
description: Fields automatically set on the target resource. Not editable by the user.
|
|
1591
|
+
items:
|
|
1592
|
+
$ref: '#/components/schemas/SupportedByPreConfiguredField'
|
|
1593
|
+
fieldsUserMustSet:
|
|
1594
|
+
type: array
|
|
1595
|
+
description: Fields the user must provide values for when creating the target resource.
|
|
1596
|
+
items:
|
|
1597
|
+
$ref: '#/components/schemas/SupportedByFieldUserMustSet'
|
|
1598
|
+
fieldsToUnset:
|
|
1599
|
+
type: array
|
|
1600
|
+
description: Field paths to clear on the target resource.
|
|
1601
|
+
conditions:
|
|
1602
|
+
type: array
|
|
1603
|
+
description: |-
|
|
1604
|
+
Expression-based filters referenced by `_conditionIds` in
|
|
1605
|
+
`preConfiguredFields` and `fieldsUserMustSet` to conditionally
|
|
1606
|
+
apply those field configurations.
|
|
1607
|
+
items:
|
|
1608
|
+
type: object
|
|
1609
|
+
properties:
|
|
1610
|
+
_id:
|
|
1611
|
+
type: string
|
|
1612
|
+
format: objectId
|
|
1613
|
+
readOnly: true
|
|
1614
|
+
description: Unique identifier for this condition, referenced by `_conditionIds` in field entries.
|
|
1615
|
+
examples:
|
|
1616
|
+
- 5f8d43a1b9e5a80011a35f2c
|
|
1617
|
+
condition:
|
|
1618
|
+
$ref: '#/components/schemas/Filter'
|
|
1619
|
+
SupportedBy:
|
|
1620
|
+
type: object
|
|
1621
|
+
description: |-
|
|
1622
|
+
Framework-defined defaults that pre-configure fields and prompt users
|
|
1623
|
+
when a connection, export, import, or iClient is created from this
|
|
1624
|
+
connector (or from a specific version / API group).
|
|
1625
|
+
properties:
|
|
1626
|
+
connection:
|
|
1627
|
+
$ref: '#/components/schemas/SupportedBySection'
|
|
1628
|
+
export:
|
|
1629
|
+
$ref: '#/components/schemas/SupportedBySection'
|
|
1630
|
+
import:
|
|
1631
|
+
$ref: '#/components/schemas/SupportedBySection'
|
|
1632
|
+
iClient:
|
|
1633
|
+
$ref: '#/components/schemas/SupportedBySection'
|
|
1634
|
+
Version:
|
|
1635
|
+
type: object
|
|
1636
|
+
description: |-
|
|
1637
|
+
A version of the connector (or of an API group). Both contexts use the
|
|
1638
|
+
same shape.
|
|
1639
|
+
properties:
|
|
1640
|
+
_id:
|
|
1641
|
+
type: string
|
|
1642
|
+
format: objectId
|
|
1643
|
+
readOnly: true
|
|
1644
|
+
description: Unique identifier for this version.
|
|
1645
|
+
examples:
|
|
1646
|
+
- 63987132784a39b73aae63ce
|
|
1647
|
+
name:
|
|
1648
|
+
type: string
|
|
1649
|
+
description: Display name for this version (e.g. `v3`).
|
|
1650
|
+
examples:
|
|
1651
|
+
- v3
|
|
1652
|
+
published:
|
|
1653
|
+
type: boolean
|
|
1654
|
+
description: When true, this version is visible to users.
|
|
1655
|
+
baseURIs:
|
|
1656
|
+
type: array
|
|
1657
|
+
description: Base URI templates used for requests targeting this version.
|
|
1658
|
+
items:
|
|
1659
|
+
type: string
|
|
1660
|
+
examples:
|
|
1661
|
+
- https://api.acme.com/v3
|
|
1662
|
+
supportedBy:
|
|
1663
|
+
$ref: '#/components/schemas/SupportedBy'
|
|
1664
|
+
HTTPConnectorBase:
|
|
1665
|
+
type: object
|
|
1666
|
+
description: Writable fields shared by the request and response schemas.
|
|
1667
|
+
properties:
|
|
1668
|
+
name:
|
|
1669
|
+
type: string
|
|
1670
|
+
description: Display name for this HTTP Connector.
|
|
1671
|
+
maxLength: 255
|
|
1672
|
+
examples:
|
|
1673
|
+
- Acme API
|
|
1674
|
+
published:
|
|
1675
|
+
type: boolean
|
|
1676
|
+
description: When true, this connector is visible to users.
|
|
1677
|
+
baseURIs:
|
|
1678
|
+
type: array
|
|
1679
|
+
description: Base URI templates (used when `apis` is empty).
|
|
1680
|
+
items:
|
|
1681
|
+
type: string
|
|
1682
|
+
examples:
|
|
1683
|
+
- https://api.acme.com
|
|
1684
|
+
helpURL:
|
|
1685
|
+
type: string
|
|
1686
|
+
description: Documentation URL shown to users when configuring this connector.
|
|
1687
|
+
examples:
|
|
1688
|
+
- https://docs.celigo.com/hc/en-us/articles/4411468706203
|
|
1689
|
+
legacyId:
|
|
1690
|
+
type: string
|
|
1691
|
+
description: Legacy assistant ID for backward compatibility.
|
|
1692
|
+
examples:
|
|
1693
|
+
- acme
|
|
1694
|
+
isGraphQL:
|
|
1695
|
+
type: boolean
|
|
1696
|
+
description: When true, this connector targets a GraphQL API.
|
|
1697
|
+
requireBodyMatchForLinking:
|
|
1698
|
+
type: boolean
|
|
1699
|
+
description: Require request body matching when auto-linking exports/imports.
|
|
1700
|
+
disableAutoLinking:
|
|
1701
|
+
type: boolean
|
|
1702
|
+
description: Disable automatic linking of exports/imports to this connector.
|
|
1703
|
+
versioning:
|
|
1704
|
+
$ref: '#/components/schemas/Versioning'
|
|
1705
|
+
versions:
|
|
1706
|
+
type: array
|
|
1707
|
+
description: Connector versions (used when `apis` is empty).
|
|
1708
|
+
items:
|
|
1709
|
+
$ref: '#/components/schemas/Version'
|
|
1710
|
+
apis:
|
|
1711
|
+
type: array
|
|
1712
|
+
description: API groups under this connector. Each group has its own versions, baseURIs, and supportedBy config.
|
|
1713
|
+
items:
|
|
1714
|
+
type: object
|
|
1715
|
+
properties:
|
|
1716
|
+
_id:
|
|
1717
|
+
type: string
|
|
1718
|
+
format: objectId
|
|
1719
|
+
readOnly: true
|
|
1720
|
+
description: Unique identifier for this API group.
|
|
1721
|
+
examples:
|
|
1722
|
+
- 6a1b2c3d4e5f6789abcdef02
|
|
1723
|
+
name:
|
|
1724
|
+
type: string
|
|
1725
|
+
description: Display name for this API group.
|
|
1726
|
+
examples:
|
|
1727
|
+
- Profit
|
|
1728
|
+
description:
|
|
1729
|
+
type: string
|
|
1730
|
+
maxLength: 10240
|
|
1731
|
+
description: Explains what this API group covers, shown to users when selecting an API.
|
|
1732
|
+
examples:
|
|
1733
|
+
- Financial and ERP operations exposed by the Profit API.
|
|
1734
|
+
published:
|
|
1735
|
+
type: boolean
|
|
1736
|
+
description: When true, this API group is visible to users.
|
|
1737
|
+
baseURIs:
|
|
1738
|
+
type: array
|
|
1739
|
+
description: Base URI templates used for requests targeting this API group.
|
|
1740
|
+
items:
|
|
1741
|
+
type: string
|
|
1742
|
+
examples:
|
|
1743
|
+
- https://api.acme.com/profit
|
|
1744
|
+
helpURL:
|
|
1745
|
+
type: string
|
|
1746
|
+
description: Documentation URL shown to users when configuring this API group.
|
|
1747
|
+
examples:
|
|
1748
|
+
- https://docs.celigo.com/hc/en-us/articles/42612451102235
|
|
1749
|
+
legacyId:
|
|
1750
|
+
type: string
|
|
1751
|
+
description: Legacy assistant ID for backward compatibility.
|
|
1752
|
+
examples:
|
|
1753
|
+
- acme-profit
|
|
1754
|
+
isGraphQL:
|
|
1755
|
+
type: boolean
|
|
1756
|
+
description: When true, this API group targets a GraphQL API.
|
|
1757
|
+
versioning:
|
|
1758
|
+
$ref: '#/components/schemas/Versioning'
|
|
1759
|
+
versions:
|
|
1760
|
+
type: array
|
|
1761
|
+
description: Versions available under this API group.
|
|
1762
|
+
items:
|
|
1763
|
+
$ref: '#/components/schemas/Version'
|
|
1764
|
+
supportedBy:
|
|
1765
|
+
$ref: '#/components/schemas/SupportedBy'
|
|
1766
|
+
setDefault:
|
|
1767
|
+
type: boolean
|
|
1768
|
+
description: When true, this API group is the connector's default selection.
|
|
1769
|
+
supportedBy:
|
|
1770
|
+
allOf:
|
|
1771
|
+
- $ref: '#/components/schemas/SupportedBy'
|
|
1772
|
+
preBuiltExports:
|
|
1773
|
+
type: array
|
|
1774
|
+
description: Pre-built export templates associated with this connector.
|
|
1775
|
+
items:
|
|
1776
|
+
type: object
|
|
1777
|
+
properties:
|
|
1778
|
+
_exportId:
|
|
1779
|
+
type: string
|
|
1780
|
+
format: objectId
|
|
1781
|
+
x-celigo-refModel: exports
|
|
1782
|
+
description: Export resource that serves as the pre-built template.
|
|
1783
|
+
examples:
|
|
1784
|
+
- 66a1f2c3b4d5e6f7a8b9c0d1
|
|
1785
|
+
published:
|
|
1786
|
+
type: boolean
|
|
1787
|
+
description: When true, this pre-built export is visible to users.
|
|
1788
|
+
required:
|
|
1789
|
+
- _exportId
|
|
1790
|
+
preBuiltImports:
|
|
1791
|
+
type: array
|
|
1792
|
+
description: Pre-built import templates associated with this connector.
|
|
1793
|
+
items:
|
|
1794
|
+
type: object
|
|
1795
|
+
properties:
|
|
1796
|
+
_importId:
|
|
1797
|
+
type: string
|
|
1798
|
+
format: objectId
|
|
1799
|
+
x-celigo-refModel: imports
|
|
1800
|
+
description: Import resource that serves as the pre-built template.
|
|
1801
|
+
examples:
|
|
1802
|
+
- 66b2e3d4c5f6a7b8c9d0e1f2
|
|
1803
|
+
published:
|
|
1804
|
+
type: boolean
|
|
1805
|
+
description: When true, this pre-built import is visible to users.
|
|
1806
|
+
required:
|
|
1807
|
+
- _importId
|
|
1808
|
+
Request:
|
|
1809
|
+
type: object
|
|
1810
|
+
description: |-
|
|
1811
|
+
Fields for creating or updating an HTTP Connector. `name` is always
|
|
1812
|
+
required. On create, provide either `versions` (flat connector) or
|
|
1813
|
+
`apis` (grouped connector) -- most connectors use the flat pattern.
|
|
1814
|
+
required:
|
|
1815
|
+
- name
|
|
1816
|
+
allOf:
|
|
1817
|
+
- $ref: '#/components/schemas/HTTPConnectorBase'
|
|
1818
|
+
ResourceResponse:
|
|
1819
|
+
type: object
|
|
1820
|
+
description: Response
|
|
1821
|
+
x-celigo-ai-guidance:
|
|
1822
|
+
- Core response fields shared by all Celigo resources
|
|
1823
|
+
properties:
|
|
1824
|
+
_id:
|
|
1825
|
+
type: string
|
|
1826
|
+
format: objectId
|
|
1827
|
+
readOnly: true
|
|
1828
|
+
description: Unique identifier for the resource. Format is a 24-character hexadecimal string.
|
|
1829
|
+
x-celigo-ai-guidance:
|
|
1830
|
+
- |-
|
|
1831
|
+
The _id is used in:
|
|
1832
|
+
- API endpoints that operate on a specific resource (e.g., GET, PUT, DELETE)
|
|
1833
|
+
- References from other resources (e.g., flows that use this resource)
|
|
1834
|
+
- Job history and error tracking
|
|
1835
|
+
examples:
|
|
1836
|
+
- 5f8d43a1b9e5a80011a35f2c
|
|
1837
|
+
createdAt:
|
|
1838
|
+
type: string
|
|
1839
|
+
format: date-time
|
|
1840
|
+
readOnly: true
|
|
1841
|
+
description: Timestamp when the resource was created. Set automatically and cannot be modified.
|
|
1842
|
+
x-celigo-ai-guidance:
|
|
1843
|
+
- Recorded in ISO 8601 with a UTC timezone (Z suffix).
|
|
1844
|
+
examples:
|
|
1845
|
+
- '2023-04-01T09:15:32Z'
|
|
1846
|
+
lastModified:
|
|
1847
|
+
type: string
|
|
1848
|
+
format: date-time
|
|
1849
|
+
readOnly: true
|
|
1850
|
+
description: Timestamp when the resource was last updated. Changes whenever any property is modified.
|
|
1851
|
+
x-celigo-ai-guidance:
|
|
1852
|
+
- Recorded in ISO 8601 with a UTC timezone (Z suffix); always equal to or later than `createdAt`.
|
|
1853
|
+
examples:
|
|
1854
|
+
- '2023-04-15T14:30:15Z'
|
|
1855
|
+
deletedAt:
|
|
1856
|
+
type:
|
|
1857
|
+
- string
|
|
1858
|
+
- 'null'
|
|
1859
|
+
format: date-time
|
|
1860
|
+
readOnly: true
|
|
1861
|
+
description: Timestamp when the resource was soft-deleted. When null or absent, the resource is active.
|
|
1862
|
+
x-celigo-ai-guidance:
|
|
1863
|
+
- Non-null means the resource is soft-deleted (in the recycle bin) — recoverable within the retention period before permanent removal.
|
|
1864
|
+
examples:
|
|
1865
|
+
- '2023-05-20T11:45:32Z'
|
|
1866
|
+
required:
|
|
1867
|
+
- _id
|
|
1868
|
+
HTTPConnector:
|
|
1869
|
+
type: object
|
|
1870
|
+
required:
|
|
1871
|
+
- _id
|
|
1872
|
+
- _userId
|
|
1873
|
+
- name
|
|
1874
|
+
- createdAt
|
|
1875
|
+
- lastModified
|
|
1876
|
+
description: HTTP Connector object as returned by the detail (by-ID) endpoint.
|
|
1877
|
+
allOf:
|
|
1878
|
+
- $ref: '#/components/schemas/HTTPConnectorBase'
|
|
1879
|
+
- $ref: '#/components/schemas/ResourceResponse'
|
|
1880
|
+
- type: object
|
|
1881
|
+
properties:
|
|
1882
|
+
_userId:
|
|
1883
|
+
type: string
|
|
1884
|
+
format: objectId
|
|
1885
|
+
description: User who created this connector.
|
|
1886
|
+
readOnly: true
|
|
1887
|
+
x-celigo-refModel: users
|
|
1888
|
+
examples:
|
|
1889
|
+
- 6316f2b1e37e79778a43391c
|
|
1890
|
+
legacyIds:
|
|
1891
|
+
type: array
|
|
1892
|
+
description: All legacy assistant IDs associated with this connector.
|
|
1893
|
+
readOnly: true
|
|
1894
|
+
items:
|
|
1895
|
+
type: string
|
|
1896
|
+
examples:
|
|
1897
|
+
- acme
|
|
1898
|
+
supportsIClient:
|
|
1899
|
+
type: boolean
|
|
1900
|
+
description: When true, this connector supports shared iClient credentials.
|
|
1901
|
+
readOnly: true
|
|
1902
|
+
supportsWebhook:
|
|
1903
|
+
type: boolean
|
|
1904
|
+
description: When true, this connector supports webhook-based exports.
|
|
1905
|
+
readOnly: true
|
|
1906
|
+
hasBlobEndpoints:
|
|
1907
|
+
type: boolean
|
|
1908
|
+
description: When true, at least one endpoint under this connector handles binary/blob data.
|
|
1909
|
+
readOnly: true
|
|
1910
|
+
metadataLoadStrategy:
|
|
1911
|
+
type: string
|
|
1912
|
+
enum:
|
|
1913
|
+
- staged
|
|
1914
|
+
readOnly: true
|
|
1915
|
+
x-enumDescriptions:
|
|
1916
|
+
staged: Form metadata is loaded via catalog and resourceEndpointDetail routes
|
|
1917
|
+
description: |-
|
|
1918
|
+
Present only when the connector uses staged metadata loading. Omitted
|
|
1919
|
+
when the stored strategy is `full`.
|
|
1920
|
+
__numOfBlobEndpoints:
|
|
1921
|
+
type: number
|
|
1922
|
+
description: Number of blob endpoints for this connector
|
|
1923
|
+
readOnly: true
|
|
1924
|
+
examples:
|
|
1925
|
+
- 2
|
|
1926
|
+
metadata:
|
|
1927
|
+
type: object
|
|
1928
|
+
readOnly: true
|
|
1929
|
+
description: |-
|
|
1930
|
+
Connector metadata used by Data Intelligence tooling. Returned
|
|
1931
|
+
only by the detail (by-ID) endpoint — list responses omit it.
|
|
1932
|
+
properties:
|
|
1933
|
+
di:
|
|
1934
|
+
type: object
|
|
1935
|
+
description: Data Intelligence attributes for this connector.
|
|
1936
|
+
properties:
|
|
1937
|
+
isSourceOnboard:
|
|
1938
|
+
type: boolean
|
|
1939
|
+
description: When true, the connector is onboarded as a Data Intelligence source.
|
|
1940
|
+
apiResolution:
|
|
1941
|
+
type: object
|
|
1942
|
+
description: |-
|
|
1943
|
+
Which API group and version Data Intelligence resolves this
|
|
1944
|
+
connector to. Present only on connectors with multiple API
|
|
1945
|
+
groups or versions.
|
|
1946
|
+
properties:
|
|
1947
|
+
api:
|
|
1948
|
+
type: string
|
|
1949
|
+
description: Name of the resolved API group.
|
|
1950
|
+
examples:
|
|
1951
|
+
- Profit
|
|
1952
|
+
version:
|
|
1953
|
+
type: string
|
|
1954
|
+
description: Name of the resolved version.
|
|
1955
|
+
examples:
|
|
1956
|
+
- v3
|
|
1957
|
+
Error:
|
|
1958
|
+
type: object
|
|
1959
|
+
description: Standard error response envelope returned by integrator.io APIs.
|
|
1960
|
+
properties:
|
|
1961
|
+
errors:
|
|
1962
|
+
type: array
|
|
1963
|
+
description: List of errors that occurred while processing the request.
|
|
1964
|
+
items:
|
|
1965
|
+
type: object
|
|
1966
|
+
properties:
|
|
1967
|
+
code:
|
|
1968
|
+
oneOf:
|
|
1969
|
+
- type: string
|
|
1970
|
+
- type: integer
|
|
1971
|
+
description: |-
|
|
1972
|
+
Machine-readable error code. Usually a string like
|
|
1973
|
+
`invalid_ref`, `missing_required_field`, or `unauthorized`;
|
|
1974
|
+
may be an **integer** when the error mirrors an upstream HTTP
|
|
1975
|
+
status (e.g. `500`) — most commonly returned by connection-ping
|
|
1976
|
+
and adaptor-proxy responses.
|
|
1977
|
+
message:
|
|
1978
|
+
type: string
|
|
1979
|
+
description: Human-readable description of the error.
|
|
1980
|
+
field:
|
|
1981
|
+
type: string
|
|
1982
|
+
description: |-
|
|
1983
|
+
Optional pointer to the document field that caused the error.
|
|
1984
|
+
Used by structural validation errors (`missing_required_field`,
|
|
1985
|
+
`invalid_ref`) to indicate which field is at fault
|
|
1986
|
+
(e.g. `_id`, `type`, `http.baseURI`).
|
|
1987
|
+
source:
|
|
1988
|
+
type: string
|
|
1989
|
+
description: |-
|
|
1990
|
+
Optional origin layer for the error — e.g. `application` when
|
|
1991
|
+
the error came from the remote system the adaptor called,
|
|
1992
|
+
`connector` when the adaptor itself rejected the request.
|
|
1993
|
+
required:
|
|
1994
|
+
- message
|
|
1995
|
+
required:
|
|
1996
|
+
- errors
|
|
1997
|
+
CatalogEndpointSummary:
|
|
1998
|
+
type: object
|
|
1999
|
+
required:
|
|
2000
|
+
- id
|
|
2001
|
+
- name
|
|
2002
|
+
description: Projected endpoint summary in a form metadata catalog response.
|
|
2003
|
+
properties:
|
|
2004
|
+
id:
|
|
2005
|
+
type: string
|
|
2006
|
+
format: objectId
|
|
2007
|
+
description: HTTP Connector Endpoint ID.
|
|
2008
|
+
examples:
|
|
2009
|
+
- 63987132784a39b73aae63f1
|
|
2010
|
+
name:
|
|
2011
|
+
type: string
|
|
2012
|
+
description: Display name for this endpoint.
|
|
2013
|
+
examples:
|
|
2014
|
+
- Create order
|
|
2015
|
+
ignoreExisting:
|
|
2016
|
+
type: boolean
|
|
2017
|
+
description: When true, import flows ignore records that already exist. Present for import catalogs only.
|
|
2018
|
+
ignoreMissing:
|
|
2019
|
+
type: boolean
|
|
2020
|
+
description: When true, import flows ignore missing records. Present for import catalogs only.
|
|
2021
|
+
isIdentifierPresent:
|
|
2022
|
+
type: boolean
|
|
2023
|
+
description: When true, the import endpoint exposes an identifier field. Present for import catalogs only.
|
|
2024
|
+
CatalogResourceSummary:
|
|
2025
|
+
type: object
|
|
2026
|
+
required:
|
|
2027
|
+
- id
|
|
2028
|
+
- name
|
|
2029
|
+
- endpoints
|
|
2030
|
+
description: Projected resource summary in a form metadata catalog response.
|
|
2031
|
+
properties:
|
|
2032
|
+
id:
|
|
2033
|
+
type: string
|
|
2034
|
+
format: objectId
|
|
2035
|
+
description: HTTP Connector Resource ID.
|
|
2036
|
+
examples:
|
|
2037
|
+
- 63987132784a39b73aae63e7
|
|
2038
|
+
name:
|
|
2039
|
+
type: string
|
|
2040
|
+
description: Display name for this resource.
|
|
2041
|
+
examples:
|
|
2042
|
+
- Orders
|
|
2043
|
+
_httpConnectorApiId:
|
|
2044
|
+
type: string
|
|
2045
|
+
format: objectId
|
|
2046
|
+
x-celigo-refModel: httpconnectorapis
|
|
2047
|
+
description: API group this resource belongs to when the connector uses grouped APIs.
|
|
2048
|
+
examples:
|
|
2049
|
+
- 6a1b2c3d4e5f6789abcdef02
|
|
2050
|
+
_versionIds:
|
|
2051
|
+
type: array
|
|
2052
|
+
description: Version IDs this resource is associated with.
|
|
2053
|
+
items:
|
|
2054
|
+
type: string
|
|
2055
|
+
format: objectId
|
|
2056
|
+
versions:
|
|
2057
|
+
type: array
|
|
2058
|
+
description: Version labels associated with this resource.
|
|
2059
|
+
items:
|
|
2060
|
+
type: object
|
|
2061
|
+
properties:
|
|
2062
|
+
version:
|
|
2063
|
+
type: string
|
|
2064
|
+
description: Display name for the version.
|
|
2065
|
+
examples:
|
|
2066
|
+
- v1
|
|
2067
|
+
_id:
|
|
2068
|
+
type: string
|
|
2069
|
+
format: objectId
|
|
2070
|
+
description: Version ID.
|
|
2071
|
+
examples:
|
|
2072
|
+
- 63987132784a39b73aae63ce
|
|
2073
|
+
endpoints:
|
|
2074
|
+
type: array
|
|
2075
|
+
description: Endpoint summaries available on this resource for the requested plane.
|
|
2076
|
+
items:
|
|
2077
|
+
$ref: '#/components/schemas/CatalogEndpointSummary'
|
|
2078
|
+
HTTPConnectorCatalogResponse:
|
|
2079
|
+
type: object
|
|
2080
|
+
required:
|
|
2081
|
+
- resources
|
|
2082
|
+
description: Form metadata catalog for one import or export plane.
|
|
2083
|
+
properties:
|
|
2084
|
+
labels:
|
|
2085
|
+
type: object
|
|
2086
|
+
additionalProperties:
|
|
2087
|
+
type: string
|
|
2088
|
+
description: Display labels for catalog UI sections.
|
|
2089
|
+
versions:
|
|
2090
|
+
type: array
|
|
2091
|
+
description: Connector versions included in the catalog projection.
|
|
2092
|
+
items:
|
|
2093
|
+
type: object
|
|
2094
|
+
properties:
|
|
2095
|
+
version:
|
|
2096
|
+
type: string
|
|
2097
|
+
description: Display name for the version.
|
|
2098
|
+
examples:
|
|
2099
|
+
- v1
|
|
2100
|
+
_id:
|
|
2101
|
+
type: string
|
|
2102
|
+
format: objectId
|
|
2103
|
+
description: Version ID.
|
|
2104
|
+
examples:
|
|
2105
|
+
- 63987132784a39b73aae63ce
|
|
2106
|
+
resources:
|
|
2107
|
+
type: array
|
|
2108
|
+
description: Projected resources and their endpoints for the requested plane.
|
|
2109
|
+
items:
|
|
2110
|
+
$ref: '#/components/schemas/CatalogResourceSummary'
|
|
2111
|
+
HTTPConnectorResourceSummary:
|
|
2112
|
+
type: object
|
|
2113
|
+
description: Sanitized HTTP Connector Resource document returned by resourceEndpointDetail.
|
|
2114
|
+
additionalProperties: true
|
|
2115
|
+
HTTPConnectorEndpointSummary:
|
|
2116
|
+
type: object
|
|
2117
|
+
description: Sanitized HTTP Connector Endpoint document returned by resourceEndpointDetail.
|
|
2118
|
+
additionalProperties: true
|
|
2119
|
+
ResourceEndpointDetail:
|
|
2120
|
+
type: object
|
|
2121
|
+
required:
|
|
2122
|
+
- resolvedResourceId
|
|
2123
|
+
- httpConnectorResource
|
|
2124
|
+
description: |-
|
|
2125
|
+
Scoped resource and endpoint metadata for the HTTP connector form.
|
|
2126
|
+
Single-endpoint requests return `resolvedEndpointId` and
|
|
2127
|
+
`httpConnectorEndpoint`. Import batch requests (`endpointIds`) return
|
|
2128
|
+
`resolvedEndpointIds` and `httpConnectorEndpoints` instead.
|
|
2129
|
+
properties:
|
|
2130
|
+
resolvedResourceId:
|
|
2131
|
+
type: string
|
|
2132
|
+
format: objectId
|
|
2133
|
+
description: Resource ID resolved for the request.
|
|
2134
|
+
examples:
|
|
2135
|
+
- 63987132784a39b73aae63e7
|
|
2136
|
+
resolvedEndpointId:
|
|
2137
|
+
type: string
|
|
2138
|
+
format: objectId
|
|
2139
|
+
description: Endpoint ID for single-endpoint requests. Present when `resolvedEndpointIds` is absent.
|
|
2140
|
+
examples:
|
|
2141
|
+
- 63987132784a39b73aae63f1
|
|
2142
|
+
resolvedEndpointIds:
|
|
2143
|
+
type: array
|
|
2144
|
+
minItems: 2
|
|
2145
|
+
maxItems: 2
|
|
2146
|
+
description: Create/update endpoint ID pair for import batch requests. Present for batch responses.
|
|
2147
|
+
items:
|
|
2148
|
+
type: string
|
|
2149
|
+
format: objectId
|
|
2150
|
+
resolvedVersionId:
|
|
2151
|
+
type: string
|
|
2152
|
+
format: objectId
|
|
2153
|
+
description: Echoed when a version scope filter was supplied on the request.
|
|
2154
|
+
examples:
|
|
2155
|
+
- 63987132784a39b73aae63ce
|
|
2156
|
+
httpConnectorResource:
|
|
2157
|
+
$ref: '#/components/schemas/HTTPConnectorResourceSummary'
|
|
2158
|
+
httpConnectorEndpoint:
|
|
2159
|
+
$ref: '#/components/schemas/HTTPConnectorEndpointSummary'
|
|
2160
|
+
description: Endpoint document for single-endpoint requests. Present when `resolvedEndpointIds` is absent.
|
|
2161
|
+
httpConnectorEndpoints:
|
|
2162
|
+
type: array
|
|
2163
|
+
minItems: 2
|
|
2164
|
+
maxItems: 2
|
|
2165
|
+
description: Create/update endpoint documents for import batch requests. Present for batch responses.
|
|
2166
|
+
items:
|
|
2167
|
+
$ref: '#/components/schemas/HTTPConnectorEndpointSummary'
|
|
2168
|
+
lookupHttpConnectorEndpoint:
|
|
2169
|
+
$ref: '#/components/schemas/HTTPConnectorEndpointSummary'
|
|
2170
|
+
description: |-
|
|
2171
|
+
Present for import single-endpoint requests when a lookup endpoint
|
|
2172
|
+
resolves in scope.
|
|
2173
|
+
lookupHttpConnectorEndpoints:
|
|
2174
|
+
type: array
|
|
2175
|
+
description: Lookup endpoints resolved for import batch requests.
|
|
2176
|
+
items:
|
|
2177
|
+
$ref: '#/components/schemas/HTTPConnectorEndpointSummary'
|
|
2178
|
+
if:
|
|
2179
|
+
required:
|
|
2180
|
+
- resolvedEndpointIds
|
|
2181
|
+
then:
|
|
2182
|
+
required:
|
|
2183
|
+
- resolvedEndpointIds
|
|
2184
|
+
- httpConnectorEndpoints
|
|
2185
|
+
else:
|
|
2186
|
+
required:
|
|
2187
|
+
- resolvedEndpointId
|
|
2188
|
+
- httpConnectorEndpoint
|
|
2189
|
+
responses:
|
|
2190
|
+
401-unauthorized:
|
|
2191
|
+
description: |-
|
|
2192
|
+
Unauthorized. The request lacks a valid bearer token, or the provided token
|
|
2193
|
+
failed to authenticate.
|
|
2194
|
+
|
|
2195
|
+
Note: the 401 response is produced by the auth middleware **before** the
|
|
2196
|
+
request reaches the endpoint handler, so it does **not** follow the
|
|
2197
|
+
standard `{errors: [...]}` envelope. Instead the body is a bare
|
|
2198
|
+
`{message: string}` object with no `code`, no `errors` array. Callers
|
|
2199
|
+
handling 401s should key off the HTTP status and the `message` string,
|
|
2200
|
+
not try to destructure an `errors[]`.
|
|
2201
|
+
content:
|
|
2202
|
+
application/json:
|
|
2203
|
+
schema:
|
|
2204
|
+
type: object
|
|
2205
|
+
properties:
|
|
2206
|
+
message:
|
|
2207
|
+
type: string
|
|
2208
|
+
description: |-
|
|
2209
|
+
Human-readable description of the auth failure. Known values:
|
|
2210
|
+
- `"Unauthorized"` — no `Authorization` header on the request.
|
|
2211
|
+
- `"Bearer Authentication Failed"` — header present but token
|
|
2212
|
+
is invalid, revoked, or expired.
|
|
2213
|
+
required:
|
|
2214
|
+
- message
|
|
2215
|
+
examples:
|
|
2216
|
+
missing_token:
|
|
2217
|
+
summary: No Authorization header sent
|
|
2218
|
+
value:
|
|
2219
|
+
message: Unauthorized
|
|
2220
|
+
invalid_token:
|
|
2221
|
+
summary: Bearer token invalid or revoked
|
|
2222
|
+
value:
|
|
2223
|
+
message: Bearer Authentication Failed
|
|
2224
|
+
400-bad-request:
|
|
2225
|
+
description: |
|
|
2226
|
+
Bad request. The server could not understand the request because of malformed syntax or invalid parameters.
|
|
2227
|
+
content:
|
|
2228
|
+
application/json:
|
|
2229
|
+
schema:
|
|
2230
|
+
$ref: '#/components/schemas/Error'
|
|
2231
|
+
examples:
|
|
2232
|
+
default:
|
|
2233
|
+
value:
|
|
2234
|
+
errors:
|
|
2235
|
+
- code: invalid_request
|
|
2236
|
+
message: The request body failed validation.
|
|
2237
|
+
403-forbidden:
|
|
2238
|
+
description: |
|
|
2239
|
+
Forbidden. The authenticated caller does not have permission to perform this operation.
|
|
2240
|
+
content:
|
|
2241
|
+
application/json:
|
|
2242
|
+
schema:
|
|
2243
|
+
$ref: '#/components/schemas/Error'
|
|
2244
|
+
examples:
|
|
2245
|
+
default:
|
|
2246
|
+
value:
|
|
2247
|
+
errors:
|
|
2248
|
+
- code: forbidden
|
|
2249
|
+
message: You do not have permission to access this resource.
|
|
2250
|
+
422-unprocessable-entity:
|
|
2251
|
+
description: |
|
|
2252
|
+
Unprocessable entity. The request was well-formed but was unable to be followed due to semantic errors.
|
|
2253
|
+
content:
|
|
2254
|
+
application/json:
|
|
2255
|
+
schema:
|
|
2256
|
+
$ref: '#/components/schemas/Error'
|
|
2257
|
+
examples:
|
|
2258
|
+
default:
|
|
2259
|
+
value:
|
|
2260
|
+
errors:
|
|
2261
|
+
- code: unprocessable_entity
|
|
2262
|
+
message: The request could not be processed due to a semantic error.
|
|
2263
|
+
404-not-found:
|
|
2264
|
+
description: |
|
|
2265
|
+
Not found. The requested resource does not exist or is not visible to the caller.
|
|
2266
|
+
content:
|
|
2267
|
+
application/json:
|
|
2268
|
+
schema:
|
|
2269
|
+
$ref: '#/components/schemas/Error'
|
|
2270
|
+
examples:
|
|
2271
|
+
default:
|
|
2272
|
+
value:
|
|
2273
|
+
errors:
|
|
2274
|
+
- code: not_found
|
|
2275
|
+
message: The requested resource was not found.
|
|
2276
|
+
x-enable-proxy: true
|
|
2277
|
+
x-internal: false
|