@celigo/api-specs 0.2.200 → 0.2.202

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.
@@ -780,6 +780,390 @@ paths:
780
780
  $ref: '#/components/responses/401-unauthorized'
781
781
  '404':
782
782
  $ref: '#/components/responses/404-not-found'
783
+ /v1/mcpservers/template/preview:
784
+ get:
785
+ x-internal: false
786
+ operationId: previewMcpServerTemplateUpload
787
+ tags:
788
+ - MCP Servers
789
+ summary: Preview an uploaded MCP server template
790
+ description: |-
791
+ Reads an MCP-server template ZIP you uploaded and returns the resource
792
+ docs installing it would create. Nothing is created. Get an upload URL
793
+ from `GET /v1/s3SignedURL?file_type=application/zip`, PUT the ZIP to its
794
+ `signedURL` with the header `x-amz-server-side-encryption: AES256`, then
795
+ pass that call's `runKey` here and to `POST /v1/mcpservers/template`.
796
+
797
+ The install runs the same ZIP checks with the same errors. Integration
798
+ template ZIPs use `GET /v1/integrations/template/preview`, which rejects
799
+ an MCP-server ZIP with a 400 `invalid_template` error.
800
+ parameters:
801
+ - name: runKey
802
+ in: query
803
+ required: true
804
+ description: |-
805
+ The `runKey` returned by `GET /v1/s3SignedURL` for the uploaded
806
+ template ZIP.
807
+ schema:
808
+ type: string
809
+ examples:
810
+ - 78f30205bdda4c4bb2a75eb121172250
811
+ responses:
812
+ '200':
813
+ description: Preview of the resources the install would create.
814
+ content:
815
+ application/json:
816
+ schema:
817
+ $ref: '#/components/schemas/McpServerTemplatePreview'
818
+ examples:
819
+ promptOnly:
820
+ summary: Template with one inline prompt
821
+ value:
822
+ type: mcpserver
823
+ objects:
824
+ - model: McpServer
825
+ doc:
826
+ name: Support assistant
827
+ description: ''
828
+ relativeURI: /support-assistant
829
+ disabled: true
830
+ tools: []
831
+ prompts:
832
+ - name: summarize-ticket
833
+ description: Summarize a support ticket.
834
+ disabled: false
835
+ arguments:
836
+ - name: ticket
837
+ description: Ticket text.
838
+ required: true
839
+ messagesTemplate:
840
+ - role: user
841
+ contentType: text
842
+ template: Summarize {{ticket}}.
843
+ - model: Prompt
844
+ doc:
845
+ name: summarize-ticket
846
+ description: Summarize a support ticket.
847
+ disabled: false
848
+ arguments:
849
+ - name: ticket
850
+ description: Ticket text.
851
+ required: true
852
+ messagesTemplate:
853
+ - role: user
854
+ contentType: text
855
+ template: Summarize {{ticket}}.
856
+ stackRequired: false
857
+ connectionAndFile:
858
+ summary: Template with a connection and a Celigo Storage file
859
+ value:
860
+ type: mcpserver
861
+ objects:
862
+ - model: McpServer
863
+ doc:
864
+ name: Support assistant
865
+ description: ''
866
+ relativeURI: /support-assistant
867
+ disabled: true
868
+ tools: []
869
+ connections:
870
+ - _connectionId: 6ab130000000000000000c01
871
+ requiresEndUserCredentials: false
872
+ resources:
873
+ - fileKey: 6ab130000000000000000f01
874
+ title: Support handbook
875
+ disabled: false
876
+ name: handbook.txt
877
+ mimeType: text/plain
878
+ - model: Connection
879
+ doc:
880
+ _id: 6ab130000000000000000c01
881
+ type: http
882
+ name: Support Desk API
883
+ http:
884
+ mediaType: json
885
+ baseURI: https://api.example.com
886
+ auth:
887
+ type: custom
888
+ - model: McpResource
889
+ doc:
890
+ fileKey: 6ab130000000000000000f01
891
+ title: Support handbook
892
+ disabled: false
893
+ name: handbook.txt
894
+ mimeType: text/plain
895
+ size: 2048
896
+ stackRequired: false
897
+ '400':
898
+ description: |-
899
+ The request or the ZIP is malformed: `runKey` is missing
900
+ (`missing_required_field`); the file is not a readable ZIP, including
901
+ one with two entries of the same name (`MCP_TEMPLATE_INVALID_ZIP`); or
902
+ an entry is invalid (`MCP_TEMPLATE_INVALID_ENTRY` — for example an
903
+ entry path containing `..`, a resource file the manifest declares but
904
+ the ZIP lacks, or a null tool row).
905
+ content:
906
+ application/json:
907
+ schema:
908
+ $ref: '#/components/schemas/Error'
909
+ examples:
910
+ missingRunKey:
911
+ value:
912
+ errors:
913
+ - code: missing_required_field
914
+ message: runKey is required.
915
+ invalidZip:
916
+ value:
917
+ errors:
918
+ - code: MCP_TEMPLATE_INVALID_ZIP
919
+ message: The MCP template zip is damaged or is not a zip file.
920
+ invalidEntry:
921
+ value:
922
+ errors:
923
+ - code: MCP_TEMPLATE_INVALID_ENTRY
924
+ message: The MCP template contains an invalid entry.
925
+ '401':
926
+ $ref: '#/components/responses/401-unauthorized'
927
+ '404':
928
+ description: The `runKey` does not match an uploaded file.
929
+ content:
930
+ application/json:
931
+ schema:
932
+ $ref: '#/components/schemas/Error'
933
+ examples:
934
+ invalidKey:
935
+ value:
936
+ errors:
937
+ - code: invalid_key
938
+ message: We couldn't find any integration template zip file.
939
+ '413':
940
+ description: |-
941
+ The ZIP exceeds an MCP template limit: more than 32 MiB uncompressed in
942
+ total, more than 500 entries, or a JSON entry over 1 MiB.
943
+ content:
944
+ application/json:
945
+ schema:
946
+ $ref: '#/components/schemas/Error'
947
+ examples:
948
+ tooLarge:
949
+ value:
950
+ errors:
951
+ - code: MCP_TEMPLATE_ZIP_TOO_LARGE
952
+ message: The MCP template zip exceeds the allowed size.
953
+ '422':
954
+ description: |-
955
+ The ZIP opened but is not an installable MCP-server template:
956
+ `mcpserver.json` is missing (`invalid_ref`, or `invalid_template` when
957
+ `integration.json` is missing too), a tool the server attaches is not
958
+ packed (`invalid_template`), an attached API or connection document is
959
+ not packed (`MCP_TEMPLATE_DEPENDENCY_MISSING`), or a resource file is
960
+ over 3 MiB or the manifest declares more than 100 of them
961
+ (`MCP_TEMPLATE_RESOURCE_TOO_LARGE`).
962
+ content:
963
+ application/json:
964
+ schema:
965
+ $ref: '#/components/schemas/Error'
966
+ examples:
967
+ noManifest:
968
+ value:
969
+ errors:
970
+ - code: invalid_ref
971
+ message: mcpserver.json not found.
972
+ noManifests:
973
+ value:
974
+ errors:
975
+ - code: invalid_template
976
+ message: integration.json file is missing.
977
+ toolNotPacked:
978
+ value:
979
+ errors:
980
+ - code: invalid_template
981
+ message: MCP server references tool 6ab130000000000000000a01, which is missing from the template zip.
982
+ dependencyMissing:
983
+ value:
984
+ errors:
985
+ - code: MCP_TEMPLATE_DEPENDENCY_MISSING
986
+ message: The MCP template is missing connection 6ab130000000000000000c01.
987
+ resourceTooLarge:
988
+ value:
989
+ errors:
990
+ - code: MCP_TEMPLATE_RESOURCE_TOO_LARGE
991
+ message: Resource file 6ab130000000000000000f02 exceeds the allowed size.
992
+ /v1/mcpservers/template:
993
+ post:
994
+ x-internal: false
995
+ operationId: installMcpServerTemplateFromUpload
996
+ tags:
997
+ - MCP Servers
998
+ summary: Install an uploaded MCP server template
999
+ description: |-
1000
+ Installs an MCP-server template from a ZIP you uploaded with the URL
1001
+ from `GET /v1/s3SignedURL`. The body carries only that call's `runKey`;
1002
+ the server's name and `relativeURI` come from the template. Check the
1003
+ ZIP first with `GET /v1/mcpservers/template/preview`, which runs the
1004
+ same ZIP checks with the same errors and creates nothing.
1005
+
1006
+ The response's `destination` envelope names what was created. A
1007
+ template with only inline prompts creates the MCP server immediately,
1008
+ disabled (`destination.resourceType` is `mcpservers`); when its
1009
+ `relativeURI` is taken, the server gets a `-2`, `-3`, … suffix. A
1010
+ template that also packs dependencies, such as a connection, creates an
1011
+ Integration in install mode instead (`destination.resourceType` is
1012
+ `integrations`), with an install step per packed connection and a last
1013
+ step that copies the template's resources; no MCP server exists yet
1014
+ when the request returns.
1015
+
1016
+ Every request starts a new install, so retrying after a timeout or an
1017
+ ambiguous failure creates a duplicate server or install-mode
1018
+ Integration.
1019
+ x-celigo-ai-guidance:
1020
+ - Never retry this POST after a timeout or an ambiguous failure — each request installs again; a prompt-only template yields a second server with a -2 suffix on its relativeURI, and a template with dependencies a second install-mode Integration.
1021
+ - Branch the follow-up on destination.resourceType — "mcpservers" means the disabled MCP server already exists; "integrations" means the install continues in that Integration's install steps and the server does not exist yet.
1022
+ requestBody:
1023
+ required: true
1024
+ content:
1025
+ application/json:
1026
+ schema:
1027
+ type: object
1028
+ required:
1029
+ - runKey
1030
+ properties:
1031
+ runKey:
1032
+ type: string
1033
+ description: |-
1034
+ The `runKey` returned by `GET /v1/s3SignedURL` for the uploaded
1035
+ template ZIP.
1036
+ examples:
1037
+ - 78f30205bdda4c4bb2a75eb121172250
1038
+ examples:
1039
+ default:
1040
+ value:
1041
+ runKey: 78f30205bdda4c4bb2a75eb121172250
1042
+ responses:
1043
+ '201':
1044
+ description: Installation started.
1045
+ content:
1046
+ application/json:
1047
+ schema:
1048
+ type: object
1049
+ required:
1050
+ - destination
1051
+ properties:
1052
+ destination:
1053
+ type: object
1054
+ description: The resource the install created first.
1055
+ required:
1056
+ - resourceType
1057
+ - resourceId
1058
+ properties:
1059
+ resourceType:
1060
+ type: string
1061
+ enum:
1062
+ - mcpservers
1063
+ - integrations
1064
+ x-enumDescriptions:
1065
+ mcpservers: The disabled MCP server, created immediately from a template with only inline prompts
1066
+ integrations: The install-mode Integration created for a template that packs dependencies, such as a connection
1067
+ description: |-
1068
+ Which resource type the install created — determines
1069
+ where the caller continues the setup.
1070
+ resourceId:
1071
+ type: string
1072
+ format: objectId
1073
+ description: |-
1074
+ The created resource's ID, in the collection named by
1075
+ `resourceType`.
1076
+ examples:
1077
+ promptOnly:
1078
+ summary: Prompt-only template — disabled MCP server
1079
+ value:
1080
+ destination:
1081
+ resourceType: mcpservers
1082
+ resourceId: 6ab130000000000000000d02
1083
+ withConnection:
1084
+ summary: Template with a connection — Integration in install mode
1085
+ value:
1086
+ destination:
1087
+ resourceType: integrations
1088
+ resourceId: 6ab130000000000000000d01
1089
+ '400':
1090
+ description: |-
1091
+ The request or the ZIP is malformed: `runKey` is missing
1092
+ (`missing_required_field`); the file is not a readable ZIP, including
1093
+ one with two entries of the same name (`MCP_TEMPLATE_INVALID_ZIP`); or
1094
+ an entry is invalid (`MCP_TEMPLATE_INVALID_ENTRY` — for example an
1095
+ entry path containing `..`, a resource file the manifest declares but
1096
+ the ZIP lacks, or a null tool row).
1097
+ content:
1098
+ application/json:
1099
+ schema:
1100
+ $ref: '#/components/schemas/Error'
1101
+ examples:
1102
+ missingRunKey:
1103
+ value:
1104
+ errors:
1105
+ - code: missing_required_field
1106
+ message: runKey is required.
1107
+ invalidZip:
1108
+ value:
1109
+ errors:
1110
+ - code: MCP_TEMPLATE_INVALID_ZIP
1111
+ message: The MCP template zip is damaged or is not a zip file.
1112
+ invalidEntry:
1113
+ value:
1114
+ errors:
1115
+ - code: MCP_TEMPLATE_INVALID_ENTRY
1116
+ message: The MCP template contains an invalid entry.
1117
+ '401':
1118
+ $ref: '#/components/responses/401-unauthorized'
1119
+ '404':
1120
+ description: The `runKey` does not match an uploaded file.
1121
+ content:
1122
+ application/json:
1123
+ schema:
1124
+ $ref: '#/components/schemas/Error'
1125
+ examples:
1126
+ invalidKey:
1127
+ value:
1128
+ errors:
1129
+ - code: invalid_key
1130
+ message: We couldn't find any integration template zip file.
1131
+ '413':
1132
+ description: |-
1133
+ The ZIP exceeds an MCP template limit: more than 32 MiB uncompressed in
1134
+ total, more than 500 entries, or a JSON entry over 1 MiB.
1135
+ content:
1136
+ application/json:
1137
+ schema:
1138
+ $ref: '#/components/schemas/Error'
1139
+ examples:
1140
+ tooLarge:
1141
+ value:
1142
+ errors:
1143
+ - code: MCP_TEMPLATE_ZIP_TOO_LARGE
1144
+ message: The MCP template zip exceeds the allowed size.
1145
+ '422':
1146
+ description: |-
1147
+ The ZIP is not an installable MCP-server template, so nothing was
1148
+ created: the same checks and codes as the preview (`invalid_ref`,
1149
+ `invalid_template`, `MCP_TEMPLATE_DEPENDENCY_MISSING`,
1150
+ `MCP_TEMPLATE_RESOURCE_TOO_LARGE`). Retrying with the same ZIP fails
1151
+ the same way.
1152
+ content:
1153
+ application/json:
1154
+ schema:
1155
+ $ref: '#/components/schemas/Error'
1156
+ examples:
1157
+ noManifest:
1158
+ value:
1159
+ errors:
1160
+ - code: invalid_ref
1161
+ message: mcpserver.json not found.
1162
+ dependencyMissing:
1163
+ value:
1164
+ errors:
1165
+ - code: MCP_TEMPLATE_DEPENDENCY_MISSING
1166
+ message: The MCP template is missing connection 6ab130000000000000000c01.
783
1167
  /v1/mcpservers/template/{_templateId}:
784
1168
  post:
785
1169
  x-internal: false
@@ -4159,6 +4543,64 @@ components:
4159
4543
  minItems: 1
4160
4544
  items:
4161
4545
  $ref: '#/components/schemas/JsonPatchOperation'
4546
+ McpServerTemplatePreview:
4547
+ type: object
4548
+ description: |-
4549
+ What installing an uploaded MCP-server template ZIP would create.
4550
+ `objects[]` lists each resource doc tagged by `model`. Packed docs keep
4551
+ the template's placeholder ids; the install assigns new ones.
4552
+ required:
4553
+ - type
4554
+ - objects
4555
+ - stackRequired
4556
+ properties:
4557
+ type:
4558
+ type: string
4559
+ enum:
4560
+ - mcpserver
4561
+ x-enumDescriptions:
4562
+ mcpserver: The ZIP is an MCP-server template; install it with `POST /v1/mcpservers/template`
4563
+ description: |-
4564
+ Kind of template the uploaded ZIP holds. Always `mcpserver` on this
4565
+ route — a ZIP without `mcpserver.json`, such as an integration
4566
+ template, is rejected before a preview is built.
4567
+ examples:
4568
+ - mcpserver
4569
+ objects:
4570
+ type: array
4571
+ description: |-
4572
+ Resource docs the install would create, in order: the `McpServer`
4573
+ doc, then each document packed in the ZIP (a `Connection`, for
4574
+ example), then one `Prompt` entry per inline prompt and one
4575
+ `McpResource` entry per Celigo Storage file the server serves. The
4576
+ ZIP's `integration.json` is never listed.
4577
+ items:
4578
+ type: object
4579
+ description: One resource doc tagged with its model type.
4580
+ required:
4581
+ - model
4582
+ - doc
4583
+ properties:
4584
+ model:
4585
+ type: string
4586
+ description: |-
4587
+ Resource class this doc describes: `McpServer`, `Prompt`, or
4588
+ `McpResource` for the server and what it serves, otherwise the
4589
+ model of the packed document, such as `Connection`.
4590
+ examples:
4591
+ - Connection
4592
+ doc:
4593
+ type: object
4594
+ description: |-
4595
+ The resource document as packed in the template. The `McpServer`
4596
+ doc has no `_id`; an `McpResource` doc also carries the file's
4597
+ `size` in bytes.
4598
+ additionalProperties: true
4599
+ stackRequired:
4600
+ type: boolean
4601
+ description: |-
4602
+ When true, the template packs something that runs on a stack, such
4603
+ as a wrapper connection.
4162
4604
  DependencyEntry:
4163
4605
  type: object
4164
4606
  description: A single resource that depends on the queried resource.
@@ -7241,6 +7683,22 @@ components:
7241
7683
  an `auth.type` `oauth` connection: 422 invalid_field_update "Removing _iClientId is
7242
7684
  not allowed for oauth connections due to security reasons." — switch it to another
7243
7685
  iClient instead.
7686
+ _tokenStoreId:
7687
+ type: string
7688
+ format: objectId
7689
+ readOnly: true
7690
+ description: |-
7691
+ Token store holding the expiring Shopify access token that this connection shares with
7692
+ the other connections of the same app and shop. Set only by the platform, and present
7693
+ only when set; no API route reads the store itself. Sending the field on POST, even as
7694
+ `null`, fails with 422 `token_store_id_not_writable`. On PUT or PATCH only a value
7695
+ different from the stored one fails the same way (any id, on a connection that has
7696
+ none), so sending it back unchanged or omitting it is accepted.
7697
+ x-celigo-ai-guidance:
7698
+ - |-
7699
+ When creating a connection from another connection's GET response, drop
7700
+ `http._tokenStoreId` from the body: a POST that carries it with any value, `null`
7701
+ included, fails with 422 `token_store_id_not_writable`.
7244
7702
  _httpConnectorId:
7245
7703
  type: string
7246
7704
  format: objectId
package/dist/template.yml CHANGED
@@ -511,6 +511,12 @@ paths:
511
511
  Previews the resources that would be created by installing a template
512
512
  from an uploaded zip file. The `runKey` query parameter ties this request
513
513
  to a previously uploaded zip (obtained from `GET /v1/s3SignedURL`).
514
+
515
+ The zip must be at most 1 MB, and its entries at most 64 MB once
516
+ uncompressed; the preview applies the same checks as
517
+ `POST /v1/integrations/template`. An MCP server template (a zip with a
518
+ root `mcpserver.json`) is refused here: preview it with
519
+ `GET /v1/mcpservers/template/preview`.
514
520
  parameters:
515
521
  - name: runKey
516
522
  in: query
@@ -535,6 +541,7 @@ paths:
535
541
  preview:
536
542
  summary: Template that creates an integration and one connection
537
543
  value:
544
+ type: integration
538
545
  stackRequired: false
539
546
  objects:
540
547
  - model: Integration
@@ -551,7 +558,10 @@ paths:
551
558
  wsdlVersion: '2020.2'
552
559
  concurrencyLevel: 1
553
560
  '400':
554
- description: Missing required `runKey` query parameter.
561
+ description: |-
562
+ Missing required `runKey` query parameter, the uploaded zip is larger
563
+ than 1 MB (`invalid_zip`), or the zip is an MCP server template
564
+ (`invalid_template`).
555
565
  content:
556
566
  application/json:
557
567
  schema:
@@ -562,6 +572,17 @@ paths:
562
572
  errors:
563
573
  - code: missing_required_field
564
574
  message: runKey is required.
575
+ zipTooLarge:
576
+ value:
577
+ errors:
578
+ - code: invalid_zip
579
+ message: Template can't be imported as the maximum allowed zip file size is 1 MB. Please re-import a new zip file.
580
+ mcpServerTemplate:
581
+ summary: A zip with a root mcpserver.json
582
+ value:
583
+ errors:
584
+ - code: invalid_template
585
+ message: MCP server templates cannot be installed through the Integration template path. Use Upload MCP.
565
586
  '401':
566
587
  $ref: '#/components/responses/401-unauthorized'
567
588
  '403':
@@ -577,7 +598,26 @@ paths:
577
598
  value:
578
599
  errors:
579
600
  - code: invalid_key
580
- message: The specified runKey was not found.
601
+ message: We couldn't find any integration template zip file.
602
+ '422':
603
+ description: |-
604
+ The zip's entries exceed 64 MB uncompressed (`invalid_zip`), or an entry
605
+ is corrupted (`corrupted_file`).
606
+ content:
607
+ application/json:
608
+ schema:
609
+ $ref: '#/components/schemas/Error'
610
+ examples:
611
+ uncompressedTooLarge:
612
+ value:
613
+ errors:
614
+ - code: invalid_zip
615
+ message: Template can't be imported as the uncompressed zip contents exceed the maximum allowed size. Please re-import a smaller zip file.
616
+ corrupted:
617
+ value:
618
+ errors:
619
+ - code: corrupted_file
620
+ message: Looks like the uploaded zip is corrupted. Please contact Celigo support if the issue persists.
581
621
  /v1/integrations/template:
582
622
  post:
583
623
  x-internal: false
@@ -594,6 +634,12 @@ paths:
594
634
  installed integration receives new connection `_id`s. Configure each
595
635
  connection in the new integration before running its flows; connection
596
636
  `_id`s that existed only in the zip are not preserved.
637
+
638
+ The zip must be at most 1 MB, and its entries at most 64 MB once
639
+ uncompressed. A zip that breaks either limit, or holds a corrupted entry,
640
+ is refused before anything is created. So is an MCP server template (a
641
+ zip with a root `mcpserver.json`): install it with
642
+ `POST /v1/mcpservers/template`.
597
643
  requestBody:
598
644
  required: true
599
645
  content:
@@ -626,21 +672,43 @@ paths:
626
672
  value:
627
673
  runKey: abc123def456
628
674
  responses:
629
- '200':
630
- description: Template installed from uploaded zip.
675
+ '201':
676
+ description: |-
677
+ Template installed. Each entry names a document the install created;
678
+ the `Integration` entry is the new integration.
631
679
  content:
632
680
  application/json:
633
681
  schema:
634
- type: object
635
- description: The created integration and related resources.
636
- additionalProperties: true
682
+ type: array
683
+ items:
684
+ type: object
685
+ required:
686
+ - model
687
+ - _id
688
+ properties:
689
+ model:
690
+ type: string
691
+ description: Model of the created document.
692
+ examples:
693
+ - Integration
694
+ _id:
695
+ type: string
696
+ format: objectId
697
+ description: Id of the created document.
698
+ examples:
699
+ - 6405b9d73496e05ff253d587
637
700
  examples:
638
701
  installed:
639
702
  summary: Integration created from the uploaded zip
640
703
  value:
641
- _integrationId: 6405b9d73496e05ff253d587
704
+ - model: Integration
705
+ _id: 6405b9d73496e05ff253d587
642
706
  '400':
643
- description: Missing required `runKey` in request body.
707
+ description: |-
708
+ Missing required `runKey` in request body, the uploaded zip is larger
709
+ than 1 MB (`invalid_zip`), the zip is an MCP server template
710
+ (`invalid_template`), or the preview reports `stackRequired: true` and
711
+ the body has no `_stackId` (`stack_not_found`).
644
712
  content:
645
713
  application/json:
646
714
  schema:
@@ -651,12 +719,31 @@ paths:
651
719
  errors:
652
720
  - code: missing_required_field
653
721
  message: runKey is required.
722
+ zipTooLarge:
723
+ value:
724
+ errors:
725
+ - code: invalid_zip
726
+ message: Template can't be imported as the maximum allowed zip file size is 1 MB. Please re-import a new zip file.
727
+ mcpServerTemplate:
728
+ summary: A zip with a root mcpserver.json
729
+ value:
730
+ errors:
731
+ - code: invalid_template
732
+ message: MCP server templates cannot be installed through the Integration template path. Use Upload MCP.
733
+ stackMissing:
734
+ summary: The zip has a stack hook and the body has no _stackId
735
+ value:
736
+ errors:
737
+ - code: stack_not_found
738
+ message: The integration template has stack reference but _stackId not found in the request body.
654
739
  '401':
655
740
  $ref: '#/components/responses/401-unauthorized'
656
741
  '403':
657
742
  $ref: '#/components/responses/403-cannot-install'
658
743
  '404':
659
- description: The `runKey` does not match any uploaded zip.
744
+ description: |-
745
+ The `runKey` does not match any uploaded zip (`invalid_key`), or
746
+ `_stackId` matches no stack (`stack_not_found`).
660
747
  content:
661
748
  application/json:
662
749
  schema:
@@ -666,7 +753,31 @@ paths:
666
753
  value:
667
754
  errors:
668
755
  - code: invalid_key
669
- message: The specified runKey was not found.
756
+ message: We couldn't find any integration template zip file.
757
+ unknownStack:
758
+ value:
759
+ errors:
760
+ - code: stack_not_found
761
+ message: 'Failed to create the integration using the integration template provided as no stack found with _id: ''000000000000000000000000''.'
762
+ '422':
763
+ description: |-
764
+ The zip's entries exceed 64 MB uncompressed (`invalid_zip`), or an entry
765
+ is corrupted (`corrupted_file`). Nothing is installed.
766
+ content:
767
+ application/json:
768
+ schema:
769
+ $ref: '#/components/schemas/Error'
770
+ examples:
771
+ uncompressedTooLarge:
772
+ value:
773
+ errors:
774
+ - code: invalid_zip
775
+ message: Template can't be imported as the uncompressed zip contents exceed the maximum allowed size. Please re-import a smaller zip file.
776
+ corrupted:
777
+ value:
778
+ errors:
779
+ - code: corrupted_file
780
+ message: Looks like the uploaded zip is corrupted. Please contact Celigo support if the issue persists.
670
781
  components:
671
782
  securitySchemes:
672
783
  bearerAuth: