@celigo/api-specs 0.2.205 → 0.2.207
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/dist/api.yml +35 -8
- package/dist/connection.yml +75 -34
- package/dist/enduser.yml +35 -8
- package/dist/export.yml +35 -8
- package/dist/httpconnector.yml +675 -0
- package/dist/import.yml +37 -17
- package/dist/mcp-server.yml +36 -9
- package/dist/sync.yml +105 -11
- package/dist/tool.yml +105 -32
- package/package.json +1 -1
- package/schemas.json +626 -583
package/dist/import.yml
CHANGED
|
@@ -8567,9 +8567,23 @@ components:
|
|
|
8567
8567
|
description: |-
|
|
8568
8568
|
Tool resource this import executes. The tool supplies the input schema, routing, page
|
|
8569
8569
|
processors, and output mapping; the import runs that tool when records reach it. Required —
|
|
8570
|
-
a `ToolImport` has no behavior without a tool to run.
|
|
8570
|
+
a `ToolImport` has no behavior without a tool to run. Saving the import fails with 422 when the
|
|
8571
|
+
tool has no routers, a step still being set up, or a branch that does not merge back; the
|
|
8572
|
+
message names the tool.
|
|
8571
8573
|
x-celigo-ai-guidance:
|
|
8572
8574
|
- Reference to the Celigo Tool resource this wrapper invokes.
|
|
8575
|
+
- |-
|
|
8576
|
+
Finish the tool before saving its wrapper: a create or update of this import fails with 422
|
|
8577
|
+
tool_empty_router when the tool has no `routers` (missing or empty; the message reads "…has
|
|
8578
|
+
no steps. Add at least one step to the tool, then save again."), router_setup_in_progress
|
|
8579
|
+
when a step is still being set up (setupInProgress), and tool_dangling_branch when a branch
|
|
8580
|
+
has no nextRouterId ("outputRouter" ends the tool). Fix the tool with PUT /v1/tools/{_id},
|
|
8581
|
+
then save the import again.
|
|
8582
|
+
- |-
|
|
8583
|
+
A save that passes doesn't mean the tool runs: a branch with empty `pageProcessors` passes
|
|
8584
|
+
it, and the tool then fails at invoke with 400 tool_empty_router. Creating a parent tool, or
|
|
8585
|
+
a disabled flow, whose step is this wrapper is not checked either: both saved while the
|
|
8586
|
+
wrapped tool had no routers.
|
|
8573
8587
|
- |-
|
|
8574
8588
|
Required.
|
|
8575
8589
|
The Tool must already exist;
|
|
@@ -8973,16 +8987,20 @@ components:
|
|
|
8973
8987
|
The `key` + `batchSize` combination has not been probed (it needs a B2B Manager
|
|
8974
8988
|
account) — treat it as unverified, neither allowed nor forbidden.
|
|
8975
8989
|
encrypt:
|
|
8976
|
-
type:
|
|
8990
|
+
type: string
|
|
8991
|
+
enum:
|
|
8992
|
+
- pgp
|
|
8993
|
+
x-enumDescriptions:
|
|
8994
|
+
pgp: Encrypt the file with PGP before it is written.
|
|
8977
8995
|
description: |-
|
|
8978
|
-
|
|
8979
|
-
|
|
8980
|
-
|
|
8981
|
-
-
|
|
8982
|
-
|
|
8983
|
-
|
|
8984
|
-
|
|
8985
|
-
|
|
8996
|
+
Encrypts the output file; omit it for an unencrypted file. `pgp` requires
|
|
8997
|
+
`pgp.symmetricKeyAlgorithm` and a connection holding the recipient's public key
|
|
8998
|
+
(`pgp.publicKey`) — without either the save fails with 422 `missing_required_field`.
|
|
8999
|
+
The public-key check runs first: on a connection without one, any `encrypt` value,
|
|
9000
|
+
`false` included, fails with 422 `missing_required_field` "pgp publicKey is required
|
|
9001
|
+
when encrypt is selected to perform file encryption." before the value is checked.
|
|
9002
|
+
Blob (file-transfer) imports follow the same rule and return `encrypt` and `pgp` even
|
|
9003
|
+
without `file.type`.
|
|
8986
9004
|
csv:
|
|
8987
9005
|
type: object
|
|
8988
9006
|
description: CSV-specific configuration. Only used when `type` is `"csv"`.
|
|
@@ -9149,8 +9167,8 @@ components:
|
|
|
9149
9167
|
pgp:
|
|
9150
9168
|
type: object
|
|
9151
9169
|
description: |-
|
|
9152
|
-
PGP encryption settings applied when encrypt is
|
|
9153
|
-
signing hash. The connection must hold the recipient's public key.
|
|
9170
|
+
PGP encryption settings applied when `encrypt` is `pgp`; selects the symmetric cipher and
|
|
9171
|
+
the signing hash. The connection must hold the recipient's public key.
|
|
9154
9172
|
properties:
|
|
9155
9173
|
symmetricKeyAlgorithm:
|
|
9156
9174
|
type: string
|
|
@@ -9167,9 +9185,10 @@ components:
|
|
|
9167
9185
|
3des: Triple DES block cipher (legacy).
|
|
9168
9186
|
aes128: AES with a 128-bit key.
|
|
9169
9187
|
aes192: AES with a 192-bit key.
|
|
9170
|
-
aes256: AES with a 256-bit key (
|
|
9171
|
-
|
|
9172
|
-
|
|
9188
|
+
aes256: AES with a 256-bit key (recommended).
|
|
9189
|
+
description: |-
|
|
9190
|
+
Symmetric cipher used to encrypt the file body; required when `encrypt` is `pgp` (no
|
|
9191
|
+
server default). Use aes256 unless the recipient requires another.
|
|
9173
9192
|
examples:
|
|
9174
9193
|
- aes256
|
|
9175
9194
|
- 3des
|
|
@@ -18086,8 +18105,9 @@ components:
|
|
|
18086
18105
|
type: object
|
|
18087
18106
|
description: |-
|
|
18088
18107
|
The outcome of running one input record through an import — one element
|
|
18089
|
-
per record, in input order — shared by `POST /v1/imports/{_id}/invoke
|
|
18090
|
-
|
|
18108
|
+
per record, in input order — shared by `POST /v1/imports/{_id}/invoke`,
|
|
18109
|
+
the virtual import `POST /v1/connections/{_id}/import` and its
|
|
18110
|
+
integration-scoped forms. A record the
|
|
18091
18111
|
import itself ignored before any request carries `ignored: true` and the
|
|
18092
18112
|
`stage` that dropped it; a record the destination accepted carries its
|
|
18093
18113
|
parsed response; a record the destination rejected — or that the
|
package/dist/mcp-server.yml
CHANGED
|
@@ -3874,7 +3874,7 @@ components:
|
|
|
3874
3874
|
description: |-
|
|
3875
3875
|
Required label for the limit, echoed verbatim in the 429 error message
|
|
3876
3876
|
that rejected clients receive — name it the way consumers should read
|
|
3877
|
-
it. A missing or empty name is rejected with 422
|
|
3877
|
+
it. A missing or empty name is rejected with 422 `missing_required_field`.
|
|
3878
3878
|
examples:
|
|
3879
3879
|
- Server-level rate limit
|
|
3880
3880
|
- Per-user rate limit
|
|
@@ -5280,10 +5280,12 @@ components:
|
|
|
5280
5280
|
`targetConcurrencyLevel`. While true, `targetConcurrencyLevel` is the throughput lever: a
|
|
5281
5281
|
`concurrencyLevel` sent in a PUT is ignored, and one sent in a PATCH is stored but the
|
|
5282
5282
|
recovery machinery moves it back toward the target. Recovery never runs on `ftp`
|
|
5283
|
-
connections: FTP errors aren't treated as rate limits.
|
|
5283
|
+
connections: FTP errors aren't treated as rate limits. A rate limit hit by a Tool
|
|
5284
|
+
invocation (`POST /v1/tools/{_id}/invoke`) or an export preview
|
|
5285
|
+
(`POST /v1/exports/preview`) leaves the connection's concurrency as it is.
|
|
5284
5286
|
x-celigo-ai-guidance:
|
|
5285
5287
|
- To change throughput while this is true, write `targetConcurrencyLevel`; a `concurrencyLevel` sent in a PUT returns 200 and changes nothing.
|
|
5286
|
-
- Turning it on copies `concurrencyLevel` into `targetConcurrencyLevel`; turning it off unsets the target and leaves `concurrencyLevel` at its current value, which may be below the old target if a recovery was in progress. A `targetConcurrencyLevel`
|
|
5288
|
+
- Turning it on copies `concurrencyLevel` into `targetConcurrencyLevel`; turning it off unsets the target and leaves `concurrencyLevel` at its current value, which may be below the old target if a recovery was in progress. A `targetConcurrencyLevel` sent on a create that sets this false, or with the write that turns this off, is dropped; on a connection where this is already false, writing one fails with 422 `invalid_concurrency_level`.
|
|
5287
5289
|
- These four settings (`concurrencyLevel`, `targetConcurrencyLevel`, `_borrowConcurrencyFromConnectionId`, this flag) accept a credential-free `PATCH /v1/connections/{_id}`. A PUT replaces the whole document, so send each secret back as its masked `******` value (that keeps it) or as a new value, and never drop one to keep it — an omitted password or `http.encrypted` is cleared, and a static token left out (with no `refreshMethod`) fails the PUT with 422.
|
|
5288
5290
|
- On a create, while this is true, set the level with `targetConcurrencyLevel`: on `http`, `ftp`, `rdbms` and `mongodb` connections the save stores the target sent, or the adaptor's default without one (1 for `ftp`, 5 for `rdbms` and `mongodb`, 25 for `http` where the license's `concurrency` is at least 25), as both fields, whatever `concurrencyLevel` the body carried. A create that sends this as `false` keeps its `concurrencyLevel`.
|
|
5289
5291
|
- On an `ftp` connection recovery never runs, and transfer threads are `ftp.multiThreadCount`.
|
|
@@ -5920,8 +5922,10 @@ components:
|
|
|
5920
5922
|
While `autoRecoverRateLimitErrors` is true, a create sets `concurrencyLevel` to this value, and a
|
|
5921
5923
|
create that omits it gets 1 for both. Auto-recovery never runs on FTP connections (FTP errors
|
|
5922
5924
|
aren't treated as rate limits), so nothing climbs back to it.
|
|
5923
|
-
Kept on a `PUT` that omits it, like `concurrencyLevel
|
|
5924
|
-
`autoRecoverRateLimitErrors`
|
|
5925
|
+
Kept on a `PUT` that omits it, like `concurrencyLevel`. A create that sends
|
|
5926
|
+
`autoRecoverRateLimitErrors` false, or a write that turns it off, drops it; on a connection
|
|
5927
|
+
where the flag is already false, sending it fails with 422 `invalid_concurrency_level`
|
|
5928
|
+
("cannot be set when autoRecoverRateLimitErrors is false").
|
|
5925
5929
|
minimum: 1
|
|
5926
5930
|
maximum: 50
|
|
5927
5931
|
examples:
|
|
@@ -6662,9 +6666,10 @@ components:
|
|
|
6662
6666
|
Higher values increase throughput but may trigger API rate limits.
|
|
6663
6667
|
Set this based on the target API's rate limit documentation.
|
|
6664
6668
|
Send no more than the account's licensed maximum (25 standard, 50 with an Environments license).
|
|
6665
|
-
A
|
|
6666
|
-
|
|
6667
|
-
|
|
6669
|
+
A create, a PATCH, and a PUT while `autoRecoverRateLimitErrors` is false reject a decimal with 422
|
|
6670
|
+
`invalid_field_value` and a boolean or a non-numeric string with 422 `invalid_concurrency_level`
|
|
6671
|
+
("must be an integer").
|
|
6672
|
+
Platform-managed while `autoRecoverRateLimitErrors` is true — a create still checks the value but stores the target in its place (25 without a `targetConcurrencyLevel`, where the license's `concurrency` is at least 25), a PUT ignores it without checking it, and the recovery machinery moves it toward the target; set `targetConcurrencyLevel` instead.
|
|
6668
6673
|
At level 1 an import's pages run one at a time, so a record's existence lookup and write finish before the next record's start (measured on a single import); the import's `idLockTemplate` serializes only same-key records and leaves the rest parallel.
|
|
6669
6674
|
minimum: 1
|
|
6670
6675
|
maximum: 50
|
|
@@ -6677,7 +6682,9 @@ components:
|
|
|
6677
6682
|
Ceiling the platform climbs back to after rate-limit recovery, in steps of 25% of this value.
|
|
6678
6683
|
Writing it also sets `concurrencyLevel` to the same value and stops any recovery in progress.
|
|
6679
6684
|
|
|
6680
|
-
Honored only while `autoRecoverRateLimitErrors` is true
|
|
6685
|
+
Honored only while `autoRecoverRateLimitErrors` is true. A create that sends the flag as false, or a
|
|
6686
|
+
write that turns it off, drops it; on a connection where the flag is already false, sending it fails with 422
|
|
6687
|
+
`invalid_concurrency_level` ("cannot be set when autoRecoverRateLimitErrors is false").
|
|
6681
6688
|
minimum: 1
|
|
6682
6689
|
maximum: 50
|
|
6683
6690
|
examples:
|
|
@@ -7448,6 +7455,26 @@ components:
|
|
|
7448
7455
|
examples:
|
|
7449
7456
|
- - rate_limit_exceeded
|
|
7450
7457
|
- too_many_requests
|
|
7458
|
+
failHeaders:
|
|
7459
|
+
type: array
|
|
7460
|
+
description: |
|
|
7461
|
+
Response-header rules for detecting rate limiting, each a header `name` with an
|
|
7462
|
+
optional `value`. A rule with an empty `name` fails the save with 422
|
|
7463
|
+
`invalid_header_format`.
|
|
7464
|
+
items:
|
|
7465
|
+
type: object
|
|
7466
|
+
required:
|
|
7467
|
+
- name
|
|
7468
|
+
properties:
|
|
7469
|
+
name:
|
|
7470
|
+
type: string
|
|
7471
|
+
description: Response header the rule checks.
|
|
7472
|
+
value:
|
|
7473
|
+
type: string
|
|
7474
|
+
description: Header value the rule checks; omit to check the header alone.
|
|
7475
|
+
examples:
|
|
7476
|
+
- - name: X-RateLimit-Remaining
|
|
7477
|
+
value: '0'
|
|
7451
7478
|
limit:
|
|
7452
7479
|
type: number
|
|
7453
7480
|
minimum: 1
|
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:
|
|
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),
|
|
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 `
|
|
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
|
|
4178
|
-
|
|
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 `
|
|
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
|