@celigo/api-specs 0.2.205 → 0.2.206

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.
@@ -204,6 +204,19 @@ paths:
204
204
  type: string
205
205
  format: objectId
206
206
  description: HTTP Connector ID.
207
+ - in: query
208
+ name: returnEverything
209
+ required: false
210
+ schema:
211
+ type: boolean
212
+ description: |-
213
+ When true, the response adds `httpConnectorResources` and
214
+ `httpConnectorEndpoints`: the connector's resources and the endpoints
215
+ under them, in one call. Only the exact value `true` fills them. Any
216
+ other non-empty value, including `false`, adds both arrays empty, and an
217
+ absent or empty parameter leaves them out. The `true` response is
218
+ streamed without a `Content-Length` header, and for a connector with
219
+ many endpoints it can exceed 1 MB.
207
220
  responses:
208
221
  '200':
209
222
  description: HTTP Connector retrieved successfully.
@@ -1951,6 +1964,649 @@ components:
1951
1964
  - '2023-05-20T11:45:32Z'
1952
1965
  required:
1953
1966
  - _id
1967
+ ResourceField:
1968
+ type: object
1969
+ description: One field of the resource's records, optionally with nested child fields.
1970
+ required:
1971
+ - id
1972
+ properties:
1973
+ id:
1974
+ type: string
1975
+ description: Field identifier as it appears in the record.
1976
+ examples:
1977
+ - id
1978
+ label:
1979
+ type: string
1980
+ description: Display label for the field.
1981
+ examples:
1982
+ - ID
1983
+ description:
1984
+ type: string
1985
+ description: Help text describing the field.
1986
+ examples:
1987
+ - Record identifier
1988
+ dataType:
1989
+ type: string
1990
+ description: Data type label for the field, stored as given.
1991
+ examples:
1992
+ - string
1993
+ metadata:
1994
+ type: object
1995
+ additionalProperties: true
1996
+ description: Free-form metadata for the field.
1997
+ resourceFields:
1998
+ type: array
1999
+ description: Child fields of an object or array field. Absent when the field is scalar.
2000
+ items:
2001
+ type: object
2002
+ additionalProperties: true
2003
+ description: Nested field with the same shape as its parent.
2004
+ ResourceSupportedBySection:
2005
+ type: object
2006
+ description: |-
2007
+ Conditions, pre-configured field values, required user inputs, and
2008
+ fields to clear for one resource type (export or import) created from
2009
+ this resource.
2010
+ properties:
2011
+ conditions:
2012
+ type: array
2013
+ description: |-
2014
+ Expression-based filters referenced by `_conditionIds` in
2015
+ `preConfiguredFields` and `fieldsUserMustSet` to apply those entries
2016
+ conditionally.
2017
+ items:
2018
+ type: object
2019
+ properties:
2020
+ _id:
2021
+ type: string
2022
+ format: objectId
2023
+ readOnly: true
2024
+ description: Identifier of this condition, referenced by `_conditionIds` in field entries.
2025
+ examples:
2026
+ - 5f8d43a1b9e5a80011a35f2c
2027
+ condition:
2028
+ $ref: '#/components/schemas/Filter'
2029
+ preConfiguredFields:
2030
+ type: array
2031
+ description: Fields set automatically on the generated export or import. Not editable by the user.
2032
+ items:
2033
+ type: object
2034
+ properties:
2035
+ path:
2036
+ type: string
2037
+ description: |-
2038
+ Dot-notation name of the setting in the connector's form. It is not always a literal
2039
+ path on the generated export or import: a form group such as `response` takes an
2040
+ object value (`{resourcePath: "customers"}`) that sets the step's
2041
+ `http.response.resourcePath`.
2042
+ examples:
2043
+ - http.successMediaType
2044
+ - response
2045
+ values:
2046
+ type: array
2047
+ description: Value(s) to assign. Typically a single-element array; entries may be any JSON type.
2048
+ examples:
2049
+ - - json
2050
+ _conditionIds:
2051
+ type: array
2052
+ description: Condition IDs that must be satisfied for this entry to apply. Always applies when absent.
2053
+ items:
2054
+ type: string
2055
+ format: objectId
2056
+ examples:
2057
+ - 5f8d43a1b9e5a80011a35f2c
2058
+ fieldsUserMustSet:
2059
+ type: array
2060
+ description: Fields the user must provide values for on the generated export or import.
2061
+ items:
2062
+ type: object
2063
+ properties:
2064
+ path:
2065
+ type: string
2066
+ description: |-
2067
+ Dot-notation name of the setting the connector's form asks for: a step field such as
2068
+ `ignoreExisting` or `type`, or `mapping.fields.generate.<field>`, a destination field
2069
+ the import's mapping must produce.
2070
+ examples:
2071
+ - name
2072
+ - ignoreExisting
2073
+ - mapping.fields.generate.customer.email
2074
+ values:
2075
+ type: array
2076
+ description: Optional suggested or constrained values. Entries may be any JSON type.
2077
+ examples:
2078
+ - - delta
2079
+ - test
2080
+ _conditionIds:
2081
+ type: array
2082
+ description: Condition IDs that must be satisfied for this entry to apply.
2083
+ items:
2084
+ type: string
2085
+ format: objectId
2086
+ examples:
2087
+ - 5f8d43a1b9e5a80011a35f2c
2088
+ helpURL:
2089
+ type: string
2090
+ description: URL to documentation for this field.
2091
+ examples:
2092
+ - https://docs.celigo.com/hc/en-us
2093
+ labelOverride:
2094
+ type: string
2095
+ description: Custom label shown in the UI instead of the default.
2096
+ examples:
2097
+ - Record name
2098
+ fieldsToUnset:
2099
+ type: array
2100
+ description: Dot-notation paths to clear on the generated export or import.
2101
+ items:
2102
+ type: string
2103
+ examples:
2104
+ - http.paging
2105
+ ResourceSupportedBy:
2106
+ type: object
2107
+ description: |-
2108
+ Defaults the connector framework applies when a user builds an export or
2109
+ an import on one of this resource's endpoints. Each section
2110
+ pre-configures fields, lists the fields the user must still fill in, and
2111
+ clears fields that do not apply.
2112
+ properties:
2113
+ export:
2114
+ $ref: '#/components/schemas/ResourceSupportedBySection'
2115
+ import:
2116
+ allOf:
2117
+ - $ref: '#/components/schemas/ResourceSupportedBySection'
2118
+ - type: object
2119
+ properties:
2120
+ pathParameterToIdentifyExisting:
2121
+ type: string
2122
+ description: |-
2123
+ Path parameter whose value identifies the existing record on
2124
+ an update or upsert import. Needed only when the endpoint has
2125
+ more than one path parameter.
2126
+ examples:
2127
+ - id
2128
+ lookupToIdentifyExisting:
2129
+ type: object
2130
+ description: |-
2131
+ Lookup the import runs to find out whether a record already
2132
+ exists before deciding between create and update. Both
2133
+ fields go together — sending one without the other is
2134
+ rejected.
2135
+ properties:
2136
+ _httpConnectorEndpointId:
2137
+ type: string
2138
+ format: objectId
2139
+ x-celigo-refModel: httpconnectorendpoints
2140
+ description: |-
2141
+ HTTP Connector Endpoint that performs the lookup. Must be
2142
+ an existing endpoint.
2143
+ examples:
2144
+ - 63987132784a39b73aae63ea
2145
+ extract:
2146
+ type: string
2147
+ description: Path in the lookup response to read the existing record's identifier from.
2148
+ examples:
2149
+ - data.0.id
2150
+ HTTPConnectorResourceBase:
2151
+ type: object
2152
+ description: Writable fields shared by the request and response schemas.
2153
+ properties:
2154
+ name:
2155
+ type: string
2156
+ description: Human-readable name of the API resource this grouping represents (for example "Account", "Contact", "Order").
2157
+ examples:
2158
+ - Account
2159
+ published:
2160
+ type: boolean
2161
+ default: false
2162
+ description: |-
2163
+ When true, the resource is visible to users of the connector's
2164
+ published catalog. Only resources whose owner may publish HTTP
2165
+ connectors appear to other accounts.
2166
+ _httpConnectorId:
2167
+ type: string
2168
+ format: objectId
2169
+ x-celigo-refModel: httpconnectors
2170
+ description: |-
2171
+ HTTP Connector this resource belongs to. Must be a connector owned by
2172
+ the caller's account.
2173
+ examples:
2174
+ - 63987132784a39b73aae63cd
2175
+ _httpConnectorApiId:
2176
+ type: string
2177
+ format: objectId
2178
+ description: |-
2179
+ API group (an entry of the connector's `apis[]`) this resource belongs
2180
+ to. Set only for grouped connectors; flat connectors scope resources by
2181
+ `_versionIds` instead.
2182
+ examples:
2183
+ - 63987132784a39b73aae63d0
2184
+ _versionIds:
2185
+ type: array
2186
+ description: |-
2187
+ Connector (or API group) versions this resource is available in. Each
2188
+ id must be one of the connector's `versions[]._id` values.
2189
+ items:
2190
+ type: string
2191
+ format: objectId
2192
+ examples:
2193
+ - - 63987132784a39b73aae63ce
2194
+ _parentResourceId:
2195
+ type: string
2196
+ format: objectId
2197
+ x-celigo-refModel: httpconnectorresources
2198
+ description: |-
2199
+ Parent resource when this resource is nested under another one (for
2200
+ example "Order line" under "Order"). Omit for top-level resources;
2201
+ cannot be combined with `isRoot: true`.
2202
+ examples:
2203
+ - 63987132784a39b73aae63e7
2204
+ isRoot:
2205
+ type: boolean
2206
+ default: false
2207
+ description: |-
2208
+ When true, marks the resource as the root of a resource hierarchy.
2209
+ Rejected together with `_parentResourceId`.
2210
+ metadata:
2211
+ type: object
2212
+ additionalProperties: true
2213
+ description: Free-form metadata stored with the resource, for example Data Intelligence attributes.
2214
+ examples:
2215
+ - note: Primary sales object
2216
+ resourceFields:
2217
+ type: array
2218
+ description: |-
2219
+ Field catalog of the records this resource returns, used by tooling to
2220
+ describe the API's payloads. Fields nest through their own
2221
+ `resourceFields`.
2222
+ items:
2223
+ $ref: '#/components/schemas/ResourceField'
2224
+ supportedBy:
2225
+ $ref: '#/components/schemas/ResourceSupportedBy'
2226
+ HTTPConnectorResource:
2227
+ type: object
2228
+ required:
2229
+ - _id
2230
+ - _httpConnectorId
2231
+ - name
2232
+ - published
2233
+ - createdAt
2234
+ - lastModified
2235
+ description: |-
2236
+ HTTP Connector Resource as returned by `GET /v1/httpconnectorresources`,
2237
+ `GET /v1/httpconnectorresources/{_id}`, and the nested
2238
+ `GET /v1/httpconnectors/{_httpConnectorId}/{_id}` — all three return the
2239
+ same object. Optional fields that were never set are absent.
2240
+ allOf:
2241
+ - $ref: '#/components/schemas/HTTPConnectorResourceBase'
2242
+ - type: object
2243
+ properties:
2244
+ _id:
2245
+ type: string
2246
+ format: objectId
2247
+ readOnly: true
2248
+ x-celigo-refModel: httpconnectorresources
2249
+ description: |-
2250
+ Unique identifier for the resource. Doubles as the
2251
+ `_httpConnectorResourceId` path parameter of the HTTP Connector
2252
+ Endpoints API.
2253
+ examples:
2254
+ - 63987132784a39b73aae63e7
2255
+ createdAt:
2256
+ type: string
2257
+ format: date-time
2258
+ readOnly: true
2259
+ description: Timestamp when the resource was created.
2260
+ examples:
2261
+ - '2023-01-17T09:51:53.665Z'
2262
+ lastModified:
2263
+ type: string
2264
+ format: date-time
2265
+ readOnly: true
2266
+ description: Timestamp when the resource was last updated. Changes on every PUT.
2267
+ examples:
2268
+ - '2024-05-23T07:00:31.350Z'
2269
+ HTTPConnectorEndpointBase:
2270
+ type: object
2271
+ description: Writable fields shared by the request and response schemas.
2272
+ properties:
2273
+ name:
2274
+ type: string
2275
+ description: Human-readable name for this endpoint, shown when users pick an operation.
2276
+ maxLength: 255
2277
+ examples:
2278
+ - List
2279
+ description:
2280
+ type: string
2281
+ description: Help text describing what the endpoint does. Absent when never set.
2282
+ maxLength: 10240
2283
+ examples:
2284
+ - Returns all answers for a question.
2285
+ published:
2286
+ type: boolean
2287
+ default: false
2288
+ description: |-
2289
+ When true, this endpoint is visible in the connector's published
2290
+ catalog. Kept as stored when omitted on PUT.
2291
+ isBlob:
2292
+ type: boolean
2293
+ default: false
2294
+ description: When true, this endpoint transfers binary (blob) content instead of records. Kept as stored when omitted on PUT.
2295
+ isMappingRequired:
2296
+ type: boolean
2297
+ default: false
2298
+ description: When true, users must configure field mappings before an import built on this endpoint can run.
2299
+ _httpConnectorResourceIds:
2300
+ type: array
2301
+ minItems: 1
2302
+ description: |-
2303
+ HTTP Connector Resources this endpoint is listed under. Each id must
2304
+ be a resource owned by the caller's account; the endpoint appears in
2305
+ the nested listing of every resource named here.
2306
+ items:
2307
+ type: string
2308
+ format: objectId
2309
+ x-celigo-refModel: httpconnectorresources
2310
+ examples:
2311
+ - 63987132784a39b73aae63e7
2312
+ method:
2313
+ type: string
2314
+ enum:
2315
+ - GET
2316
+ - PUT
2317
+ - POST
2318
+ - PATCH
2319
+ - DELETE
2320
+ - HEAD
2321
+ x-enumDescriptions:
2322
+ GET: Retrieve data from the endpoint.
2323
+ PUT: Replace data at the endpoint.
2324
+ POST: Submit data to the endpoint.
2325
+ PATCH: Partially update data at the endpoint.
2326
+ DELETE: Remove data at the endpoint.
2327
+ HEAD: Probe the endpoint without transferring a response body.
2328
+ description: |-
2329
+ HTTP method for this endpoint. Required on save; lowercase input is
2330
+ uppercased automatically.
2331
+ relativeURI:
2332
+ type: string
2333
+ description: Relative URI template for this endpoint
2334
+ examples:
2335
+ - /api/public/answer/?page={{{export.http.paging.page}}}
2336
+ mergePostBodyToPagingPostBody:
2337
+ type: boolean
2338
+ description: When true, merges the postBody into pagingPostBody for paginated requests.
2339
+ default: false
2340
+ queryParameters:
2341
+ type: array
2342
+ description: Query parameter definitions
2343
+ items:
2344
+ type: object
2345
+ properties:
2346
+ name:
2347
+ type: string
2348
+ description: Parameter name as it appears in the request query string.
2349
+ examples:
2350
+ - question_id
2351
+ label:
2352
+ type: string
2353
+ description: Label shown to users in the UI for this parameter. Defaults to `name` when omitted.
2354
+ examples:
2355
+ - Question ID
2356
+ description:
2357
+ type: string
2358
+ description: Help text shown to users explaining what this parameter does.
2359
+ examples:
2360
+ - Include only answers for a question with the specified ID.
2361
+ required:
2362
+ type: boolean
2363
+ description: When true, the user must supply a value for this parameter.
2364
+ dataType:
2365
+ type: string
2366
+ enum:
2367
+ - input
2368
+ - date
2369
+ - select
2370
+ - multiselect
2371
+ - array
2372
+ - number
2373
+ default: input
2374
+ x-enumDescriptions:
2375
+ input: Free-form text input field.
2376
+ date: Date picker input field.
2377
+ select: Single-value dropdown selection.
2378
+ multiselect: Multi-value dropdown selection.
2379
+ array: Array of values.
2380
+ number: Numeric input field.
2381
+ description: UI input type used to collect the parameter value. A free-form text input when omitted.
2382
+ values:
2383
+ type: array
2384
+ description: Predefined values offered when `dataType` is `select` or `multiselect`.
2385
+ items:
2386
+ type: string
2387
+ examples:
2388
+ - open
2389
+ required:
2390
+ - name
2391
+ pathParameters:
2392
+ type: array
2393
+ description: Path parameter definitions
2394
+ items:
2395
+ type: object
2396
+ properties:
2397
+ name:
2398
+ type: string
2399
+ description: Parameter name as it appears in the `relativeURI` template.
2400
+ examples:
2401
+ - id
2402
+ label:
2403
+ type: string
2404
+ description: Label shown to users in the UI for this parameter. Defaults to `name` when omitted.
2405
+ examples:
2406
+ - Answer ID
2407
+ description:
2408
+ type: string
2409
+ description: Help text shown to users explaining what this parameter does.
2410
+ examples:
2411
+ - Identifier of the answer to retrieve.
2412
+ required:
2413
+ type: boolean
2414
+ description: When true, the user must supply a value for this parameter.
2415
+ dataType:
2416
+ type: string
2417
+ enum:
2418
+ - input
2419
+ - date
2420
+ - select
2421
+ - multiselect
2422
+ - array
2423
+ - number
2424
+ default: input
2425
+ x-enumDescriptions:
2426
+ input: Free-form text input field.
2427
+ date: Date picker input field.
2428
+ select: Single-value dropdown selection.
2429
+ multiselect: Multi-value dropdown selection.
2430
+ array: Array of values.
2431
+ number: Numeric input field.
2432
+ description: UI input type used to collect the parameter value. A free-form text input when omitted.
2433
+ values:
2434
+ type: array
2435
+ description: Predefined values offered when `dataType` is `select` or `multiselect`.
2436
+ items:
2437
+ type: string
2438
+ examples:
2439
+ - open
2440
+ required:
2441
+ - name
2442
+ resourceFields:
2443
+ type: array
2444
+ description: Resource field definitions for this endpoint
2445
+ items:
2446
+ type: object
2447
+ properties:
2448
+ type:
2449
+ type: string
2450
+ enum:
2451
+ - inclusion
2452
+ - exclusion
2453
+ x-enumDescriptions:
2454
+ inclusion: Only the listed fields are included in the resource.
2455
+ exclusion: All fields except the listed ones are included in the resource.
2456
+ description: Whether `fields` lists the fields to include or to exclude.
2457
+ fields:
2458
+ type: array
2459
+ description: Field names the inclusion or exclusion rule applies to.
2460
+ items:
2461
+ type: string
2462
+ examples:
2463
+ - question_id
2464
+ _httpConnectorResourceId:
2465
+ type: string
2466
+ format: objectId
2467
+ description: HTTP Connector Resource these field rules apply to.
2468
+ examples:
2469
+ - 63987132784a39b73aae63e7
2470
+ required:
2471
+ - type
2472
+ - fields
2473
+ - _httpConnectorResourceId
2474
+ supportedBy:
2475
+ type: object
2476
+ description: |-
2477
+ How the connector framework turns this endpoint into an export or an
2478
+ import: which one it becomes, the fields it pre-configures, and the
2479
+ fields the user must still fill in. Each entry's `path` names a setting
2480
+ in the connector's form, which is not always a literal path on the
2481
+ generated export or import.
2482
+ x-celigo-ai-guidance:
2483
+ - |-
2484
+ Read against the published Shopify connector on 2026-10-21: the list-customers export
2485
+ endpoint presets `response` to `{resourcePath: "customers"}` and also presets `delta`,
2486
+ and asks for `type` (`delta` or `test`); the create-customer import endpoint asks for
2487
+ `ignoreExisting` and for `mapping.fields.generate.customer.email`, `…first_name` and
2488
+ `…last_name`.
2489
+ - |-
2490
+ Copy a path that is already a field of the step (`type`, `ignoreExisting`,
2491
+ `http.response.resourcePath`). Set a form group such as `response` through the step
2492
+ fields its value names (`{resourcePath: "customers"}` is `http.response.resourcePath`).
2493
+ Treat `mapping.fields.generate.<field>` as a destination field the import's mapping must
2494
+ produce, not a property to set.
2495
+ required:
2496
+ - type
2497
+ properties:
2498
+ type:
2499
+ type: string
2500
+ enum:
2501
+ - import
2502
+ - export
2503
+ x-enumDescriptions:
2504
+ import: This endpoint is used as an import (writes data to the target system).
2505
+ export: This endpoint is used as an export (reads data from the target system).
2506
+ description: |-
2507
+ Whether this endpoint is consumed as an import or an export. Also
2508
+ the value the nested listing's `supportedByType` filter matches.
2509
+ conditions:
2510
+ type: array
2511
+ description: Expression-based filters that control when entries in `preConfiguredFields` and `fieldsUserMustSet` apply.
2512
+ items:
2513
+ type: object
2514
+ additionalProperties: true
2515
+ preConfiguredFields:
2516
+ type: array
2517
+ description: Fields automatically set to predefined values on the generated export or import. Not editable by the user.
2518
+ items:
2519
+ type: object
2520
+ additionalProperties: true
2521
+ fieldsUserMustSet:
2522
+ type: array
2523
+ description: Fields the user must provide values for on the generated export or import.
2524
+ items:
2525
+ type: object
2526
+ additionalProperties: true
2527
+ fieldsToUnset:
2528
+ type: array
2529
+ description: Dot-notation paths of fields to remove from the generated export or import configuration.
2530
+ items:
2531
+ type: string
2532
+ examples:
2533
+ - http.paging.method
2534
+ pathParameterToIdentifyExisting:
2535
+ type: string
2536
+ description: Path parameter whose value identifies an existing record in the target application.
2537
+ examples:
2538
+ - id
2539
+ lookupToIdentifyExisting:
2540
+ type: object
2541
+ description: Lookup used to determine whether a record already exists in the target application.
2542
+ properties:
2543
+ _httpConnectorEndpointId:
2544
+ type: string
2545
+ format: objectId
2546
+ description: HTTP Connector Endpoint used to perform the lookup.
2547
+ x-celigo-refModel: httpconnectorendpoints
2548
+ examples:
2549
+ - 63987132784a39b73aae63ea
2550
+ extract:
2551
+ type: string
2552
+ description: Path in the lookup response from which to extract the existing record's identifier.
2553
+ examples:
2554
+ - results.0.id
2555
+ HTTPConnectorEndpoint:
2556
+ type: object
2557
+ required:
2558
+ - _id
2559
+ - name
2560
+ - method
2561
+ - relativeURI
2562
+ - published
2563
+ - isBlob
2564
+ - isMappingRequired
2565
+ - mergePostBodyToPagingPostBody
2566
+ - _httpConnectorResourceIds
2567
+ - createdAt
2568
+ - lastModified
2569
+ description: |-
2570
+ HTTP Connector Endpoint as returned by `GET /v1/httpconnectorendpoints`,
2571
+ `GET /v1/httpconnectorendpoints/{_id}`, and the nested
2572
+ `GET /v1/httpconnectors/{_httpConnectorId}/{_httpConnectorResourceId}/{_id}`
2573
+ — all three return the same object. Optional fields that were never set
2574
+ are absent.
2575
+ allOf:
2576
+ - $ref: '#/components/schemas/HTTPConnectorEndpointBase'
2577
+ - $ref: '#/components/schemas/ResourceResponse'
2578
+ - type: object
2579
+ properties:
2580
+ metadata:
2581
+ type: object
2582
+ description: |-
2583
+ Endpoint metadata used by Data Intelligence tooling. Absent when
2584
+ never set; Data Intelligence attributes can only be stored on a
2585
+ published endpoint.
2586
+ properties:
2587
+ di:
2588
+ type: object
2589
+ description: Data Intelligence attributes for this endpoint.
2590
+ properties:
2591
+ isListEndpoint:
2592
+ type: boolean
2593
+ description: When true, the endpoint returns a list of records rather than a single record.
2594
+ responseFields:
2595
+ type: array
2596
+ description: Fields Data Intelligence expects in this endpoint's response records.
2597
+ items:
2598
+ type: object
2599
+ properties:
2600
+ id:
2601
+ type: string
2602
+ description: Field path within a response record.
2603
+ examples:
2604
+ - email
2605
+ dataType:
2606
+ type: string
2607
+ description: Data type of the field.
2608
+ examples:
2609
+ - string
1954
2610
  HTTPConnector:
1955
2611
  type: object
1956
2612
  required:
@@ -2009,6 +2665,25 @@ components:
2009
2665
  readOnly: true
2010
2666
  examples:
2011
2667
  - 2
2668
+ httpConnectorResources:
2669
+ type: array
2670
+ readOnly: true
2671
+ description: |-
2672
+ Only present on GET /v1/httpconnectors/{_id} with a non-empty
2673
+ `returnEverything`, and empty unless it is exactly `true`. The
2674
+ connector's resources, sorted by `_id`: the same set
2675
+ `GET /v1/httpconnectors/{_httpConnectorId}/httpconnectorresources` lists.
2676
+ items:
2677
+ $ref: '#/components/schemas/HTTPConnectorResource'
2678
+ httpConnectorEndpoints:
2679
+ type: array
2680
+ readOnly: true
2681
+ description: |-
2682
+ Only present on GET /v1/httpconnectors/{_id} with a non-empty
2683
+ `returnEverything`, and empty unless it is exactly `true`. The
2684
+ endpoints of the returned resources, grouped in resource order.
2685
+ items:
2686
+ $ref: '#/components/schemas/HTTPConnectorEndpoint'
2012
2687
  metadata:
2013
2688
  type: object
2014
2689
  readOnly: true
package/dist/sync.yml CHANGED
@@ -654,6 +654,17 @@ paths:
654
654
  type: string
655
655
  examples:
656
656
  - WyJBY2NvdW50IiwiNmE1NTk3MGM1Zjk0OThhMTc1OGEwYWQzIl0
657
+ - name: enable
658
+ in: query
659
+ required: false
660
+ description: |-
661
+ When true, returns only enabled datasets; when false, only disabled ones. Omit to
662
+ return both. Only the lowercase strings `true` and `false` are accepted; any other
663
+ value fails with `400 invalid_query_param`.
664
+ schema:
665
+ type: boolean
666
+ examples:
667
+ - true
657
668
  - $ref: '#/components/parameters/Include'
658
669
  - $ref: '#/components/parameters/Exclude'
659
670
  responses:
@@ -723,7 +734,24 @@ paths:
723
734
  children: []
724
735
  mismatchSyncConnection: true
725
736
  '204':
726
- description: The sync has no datasets, or the sync does not exist.
737
+ description: |-
738
+ The sync has no datasets (none matching `enable`, when it is sent), or the sync
739
+ does not exist.
740
+ '400':
741
+ description: |-
742
+ `enable` is something other than `true` or `false` (`invalid_query_param`). The
743
+ value is checked before the sync is looked up.
744
+ content:
745
+ application/json:
746
+ schema:
747
+ $ref: '#/components/schemas/Error'
748
+ examples:
749
+ invalid_enable:
750
+ summary: enable=yes
751
+ value:
752
+ errors:
753
+ - code: invalid_query_param
754
+ message: The query parameter "enable" has invalid value.
727
755
  '401':
728
756
  $ref: '#/components/responses/401-unauthorized'
729
757
  '422':
@@ -2678,7 +2706,8 @@ paths:
2678
2706
  data warehouse a sync loads records into. A sync's destination application is the type of
2679
2707
  its destination connection (`rdbms.type` for warehouse connections), which must match one
2680
2708
  of the returned ids. Identifiers include `snowflake` (Snowflake), `nsaw` (NetSuite
2681
- Analytics Warehouse), `bigquery` (Google BigQuery), and `mssql` (Microsoft SQL Server).
2709
+ Analytics Warehouse), `bigquery` (Google BigQuery), `mssql` (Microsoft SQL Server), and
2710
+ `redshift` (Amazon Redshift).
2682
2711
  tags:
2683
2712
  - Syncs
2684
2713
  operationId: listSyncDestinations
@@ -2706,6 +2735,7 @@ paths:
2706
2735
  - id: bigquery
2707
2736
  - id: mssql
2708
2737
  - id: nsaw
2738
+ - id: redshift
2709
2739
  - id: snowflake
2710
2740
  '401':
2711
2741
  $ref: '#/components/responses/401-unauthorized'
@@ -2837,6 +2867,27 @@ paths:
2837
2867
  description: Adaptor the export runs on (e.g. `SalesforceExport`).
2838
2868
  examples:
2839
2869
  - SalesforceExport
2870
+ exportDocProperties:
2871
+ type: object
2872
+ description: |-
2873
+ Extraction behavior read from the export resource. Use `exportType`
2874
+ rather than `type`, which is absent for exports that extract every record.
2875
+ required:
2876
+ - exportType
2877
+ properties:
2878
+ exportType:
2879
+ type: string
2880
+ enum:
2881
+ - all
2882
+ - delta
2883
+ description: |-
2884
+ Whether the export extracts every record or only changed records.
2885
+ `delta` when the export's `type` is `delta`; `all` otherwise.
2886
+ x-enumDescriptions:
2887
+ all: The export extracts every record on every run.
2888
+ delta: The export extracts only records changed since its previous run.
2889
+ examples:
2890
+ - delta
2840
2891
  examples:
2841
2892
  default:
2842
2893
  value:
@@ -2850,6 +2901,8 @@ paths:
2850
2901
  _id: 6a3e7c54c2387aaa87881b80
2851
2902
  type: delta
2852
2903
  adaptorType: SalesforceExport
2904
+ exportDocProperties:
2905
+ exportType: delta
2853
2906
  '400':
2854
2907
  description: |-
2855
2908
  Bad request. The connection id is not a valid id, or `type` is not one of the
@@ -3465,6 +3518,28 @@ paths:
3465
3518
  description: Number of enabled fields.
3466
3519
  examples:
3467
3520
  - 16
3521
+ exportDocProperties:
3522
+ type: object
3523
+ description: |-
3524
+ Extraction behavior read from the export resource itself, not from the
3525
+ saved dataset. Absent on entries whose export is no longer among the
3526
+ source connection's exports.
3527
+ required:
3528
+ - exportType
3529
+ properties:
3530
+ exportType:
3531
+ type: string
3532
+ enum:
3533
+ - all
3534
+ - delta
3535
+ description: |-
3536
+ Whether the export extracts every record or only changed records.
3537
+ `delta` when the export's `type` is `delta`; `all` otherwise.
3538
+ x-enumDescriptions:
3539
+ all: The export extracts every record on every run.
3540
+ delta: The export extracts only records changed since its previous run.
3541
+ examples:
3542
+ - delta
3468
3543
  examples:
3469
3544
  merged:
3470
3545
  summary: Saved and unsaved entries side by side
@@ -3499,6 +3574,8 @@ paths:
3499
3574
  userActionRequired: false
3500
3575
  totalFieldCount: 16
3501
3576
  selectedFieldCount: 16
3577
+ exportDocProperties:
3578
+ exportType: delta
3502
3579
  '400':
3503
3580
  $ref: '#/components/responses/400-bad-request'
3504
3581
  '401':
@@ -3821,7 +3898,17 @@ components:
3821
3898
  configured. Choose `ignore` to keep the replicated set fixed and add new
3822
3899
  tables manually. A sync created through the API starts at `ignore`, and a PUT
3823
3900
  that omits `driftPolicy` or sends an empty `dataset` object keeps the stored
3824
- value, so moving back from `automate` takes an explicit `ignore`.
3901
+ value, so moving back from `automate` takes an explicit `ignore`. `automate` is
3902
+ kept only for object-mode sources: Salesforce, NetSuite, NetSuite JDBC, and HTTP
3903
+ connector connections whose connector, API and version match an entry in
3904
+ `GET /v1/di/metadata/sources`. For any other source a POST or PUT stores `ignore`.
3905
+ x-celigo-ai-guidance:
3906
+ - |-
3907
+ On a source that is not object-mode (a plain HTTP connection, or an HTTP connector
3908
+ connection that matches no GET /v1/di/metadata/sources entry), a save with
3909
+ dataset.added automate still succeeds (201 on POST, 200 on PUT) but stores ignore.
3910
+ Read the sync back rather than assuming automate took, and tell the user new tables
3911
+ must be enabled by hand.
3825
3912
  x-enumDescriptions:
3826
3913
  automate: Automatically add newly discovered tables to the sync and start replicating them.
3827
3914
  ignore: Leave newly discovered tables out of the sync until a user enables them.
@@ -3963,7 +4050,7 @@ components:
3963
4050
  x-celigo-refModel: connections
3964
4051
  description: |-
3965
4052
  Connection to the destination warehouse. Its application (`rdbms.type` such as
3966
- `snowflake`, `bigquery` or `mssql`, or a NetSuite Analytics Warehouse JDBC
4053
+ `snowflake`, `bigquery`, `mssql` or `redshift`, or a NetSuite Analytics Warehouse JDBC
3967
4054
  connection) is one of the ids returned by `GET /v1/di/metadata/destinations`.
3968
4055
  examples:
3969
4056
  - 68d02dbe0839a514623c1d6d
@@ -4160,7 +4247,10 @@ components:
4160
4247
  dataset. A `database` and `schema` pair, in any letter case, can back only one sync,
4161
4248
  even across integrations (`422 duplicate_destination_host`, "Duplicate destination host found"). All syncs in
4162
4249
  an integration must target the same destination application type, and a sync's
4163
- destination type can't change once saved.
4250
+ destination type can't change once saved. An Amazon Redshift destination is checked
4251
+ on every save that sends `_connectionId`: a missing `database` or `schema` fails with
4252
+ 422 `invalid_destination_sync_config` ("Redshift database is required on sync
4253
+ destination" / "Redshift schema is required on sync destination").
4164
4254
  x-celigo-ai-guidance:
4165
4255
  - |-
4166
4256
  Send the block complete or not at all. A partial block is rejected in the destination's
@@ -4174,9 +4264,9 @@ components:
4174
4264
  Saving a complete destination connects to the warehouse to create the schema
4175
4265
  (dataset) when it is missing. When the host resolves but the connection fails, or
4176
4266
  the credentials are unusable, the save fails with the connection's error — 422
4177
- `invalid_host` for SQL Server, `big_query_unexpected_error` for BigQuery — and no
4178
- sync document is created or updated; fix the connection rather than changing
4179
- database or schema names.
4267
+ `invalid_host` for SQL Server, `big_query_unexpected_error` for BigQuery,
4268
+ `redshift_auth_fail` for Amazon Redshift — and no sync document is created or
4269
+ updated; fix the connection rather than changing database or schema names.
4180
4270
  - |-
4181
4271
  A destination host that doesn't resolve can leave the save without a response for
4182
4272
  more than 30 seconds, with nothing saved (seen on SQL Server and Snowflake
@@ -4204,7 +4294,7 @@ components:
4204
4294
  x-celigo-refModel: connections
4205
4295
  description: |-
4206
4296
  Connection to the destination warehouse. Its application (`rdbms.type` such as
4207
- `snowflake`, `bigquery` or `mssql`, or a NetSuite Analytics Warehouse JDBC
4297
+ `snowflake`, `bigquery`, `mssql` or `redshift`, or a NetSuite Analytics Warehouse JDBC
4208
4298
  connection) must be one of the ids returned by `GET /v1/di/metadata/destinations`;
4209
4299
  any other connection fails with `422 invalid_destination_type`.
4210
4300
  examples:
@@ -4214,7 +4304,8 @@ components:
4214
4304
  description: |-
4215
4305
  Database in the destination warehouse the sync loads into; it must already exist.
4216
4306
  For Google BigQuery this is the GCP project id the tables are created in
4217
- (`project.dataset.table`).
4307
+ (`project.dataset.table`). For Amazon Redshift it must be an unquoted identifier,
4308
+ under the same rule as `schema`.
4218
4309
  x-celigo-ui-override: For a BigQuery destination the Create Sync wizard shows no database picker and fills this field with the selected connection's rdbms.bigquery.projectId.
4219
4310
  examples:
4220
4311
  - ANALYTICS_DB
@@ -4223,7 +4314,10 @@ components:
4223
4314
  description: |-
4224
4315
  Schema within `database` where the sync creates and loads tables; created on save
4225
4316
  when it does not exist. For Google BigQuery this is the dataset name, with case
4226
- preserved.
4317
+ preserved. For Amazon Redshift it must start with a letter or underscore, contain
4318
+ only letters, digits and underscores, stay within 127 bytes, and carry no leading
4319
+ or trailing whitespace; anything else fails with 422 `invalid_destination_sync_config`
4320
+ (for example "Redshift schema contains invalid identifier characters").
4227
4321
  x-celigo-ui-override: For a BigQuery destination the Create Sync wizard labels this field "dataset" and accepts only letters, digits and underscore (no $), starting with a letter or underscore, at most 1024 characters; Snowflake and NSAW validation is unchanged.
4228
4322
  examples:
4229
4323
  - salesforce_raw
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celigo/api-specs",
3
- "version": "0.2.205",
3
+ "version": "0.2.206",
4
4
  "private": false,
5
5
  "description": "Public OpenAPI bundles (dist/) and the celigo-cli lint schema pack (schemas.json).",
6
6
  "keywords": [
package/schemas.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "provenance": {
3
3
  "repo": "celigo/integrator-api-specs",
4
- "iasCommit": "c89a0221",
4
+ "iasCommit": "5f19db21",
5
5
  "generatedAt": "2026-10-28"
6
6
  },
7
7
  "roots": {