workato-platform-cli 1.0.0rc5.dev5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (306) hide show
  1. workato_platform_cli/__init__.py +135 -0
  2. workato_platform_cli/_version.py +34 -0
  3. workato_platform_cli/cli/__init__.py +126 -0
  4. workato_platform_cli/cli/commands/__init__.py +0 -0
  5. workato_platform_cli/cli/commands/api_clients.py +627 -0
  6. workato_platform_cli/cli/commands/api_collections.py +497 -0
  7. workato_platform_cli/cli/commands/assets.py +82 -0
  8. workato_platform_cli/cli/commands/connections.py +1205 -0
  9. workato_platform_cli/cli/commands/connectors/__init__.py +0 -0
  10. workato_platform_cli/cli/commands/connectors/command.py +178 -0
  11. workato_platform_cli/cli/commands/connectors/connector_manager.py +351 -0
  12. workato_platform_cli/cli/commands/data_tables.py +345 -0
  13. workato_platform_cli/cli/commands/guide.py +315 -0
  14. workato_platform_cli/cli/commands/init.py +229 -0
  15. workato_platform_cli/cli/commands/profiles.py +364 -0
  16. workato_platform_cli/cli/commands/projects/__init__.py +0 -0
  17. workato_platform_cli/cli/commands/projects/command.py +513 -0
  18. workato_platform_cli/cli/commands/projects/project_manager.py +338 -0
  19. workato_platform_cli/cli/commands/properties.py +174 -0
  20. workato_platform_cli/cli/commands/pull.py +327 -0
  21. workato_platform_cli/cli/commands/push/__init__.py +0 -0
  22. workato_platform_cli/cli/commands/push/command.py +320 -0
  23. workato_platform_cli/cli/commands/recipes/__init__.py +0 -0
  24. workato_platform_cli/cli/commands/recipes/command.py +847 -0
  25. workato_platform_cli/cli/commands/recipes/validator.py +1740 -0
  26. workato_platform_cli/cli/commands/workspace.py +73 -0
  27. workato_platform_cli/cli/containers.py +80 -0
  28. workato_platform_cli/cli/resources/data/connection-data.json +7364 -0
  29. workato_platform_cli/cli/resources/data/picklist-data.json +3706 -0
  30. workato_platform_cli/cli/resources/docs/README.md +178 -0
  31. workato_platform_cli/cli/resources/docs/actions.md +452 -0
  32. workato_platform_cli/cli/resources/docs/block-structure.md +424 -0
  33. workato_platform_cli/cli/resources/docs/connections-parameters.md +11946 -0
  34. workato_platform_cli/cli/resources/docs/data-mapping.md +779 -0
  35. workato_platform_cli/cli/resources/docs/formulas/array-list-formulas.md +1276 -0
  36. workato_platform_cli/cli/resources/docs/formulas/conditions.md +102 -0
  37. workato_platform_cli/cli/resources/docs/formulas/date-formulas.md +798 -0
  38. workato_platform_cli/cli/resources/docs/formulas/number-formulas.md +507 -0
  39. workato_platform_cli/cli/resources/docs/formulas/other-formulas.md +419 -0
  40. workato_platform_cli/cli/resources/docs/formulas/string-formulas.md +1353 -0
  41. workato_platform_cli/cli/resources/docs/formulas.md +214 -0
  42. workato_platform_cli/cli/resources/docs/naming-conventions.md +163 -0
  43. workato_platform_cli/cli/resources/docs/recipe-deployment-workflow.md +352 -0
  44. workato_platform_cli/cli/resources/docs/recipe-fundamentals.md +179 -0
  45. workato_platform_cli/cli/resources/docs/triggers.md +360 -0
  46. workato_platform_cli/cli/utils/__init__.py +10 -0
  47. workato_platform_cli/cli/utils/config/__init__.py +33 -0
  48. workato_platform_cli/cli/utils/config/manager.py +1001 -0
  49. workato_platform_cli/cli/utils/config/models.py +89 -0
  50. workato_platform_cli/cli/utils/config/profiles.py +491 -0
  51. workato_platform_cli/cli/utils/config/workspace.py +113 -0
  52. workato_platform_cli/cli/utils/exception_handler.py +531 -0
  53. workato_platform_cli/cli/utils/gitignore.py +32 -0
  54. workato_platform_cli/cli/utils/ignore_patterns.py +44 -0
  55. workato_platform_cli/cli/utils/spinner.py +63 -0
  56. workato_platform_cli/cli/utils/version_checker.py +237 -0
  57. workato_platform_cli/client/__init__.py +0 -0
  58. workato_platform_cli/client/workato_api/__init__.py +202 -0
  59. workato_platform_cli/client/workato_api/api/__init__.py +15 -0
  60. workato_platform_cli/client/workato_api/api/api_platform_api.py +2875 -0
  61. workato_platform_cli/client/workato_api/api/connections_api.py +1807 -0
  62. workato_platform_cli/client/workato_api/api/connectors_api.py +840 -0
  63. workato_platform_cli/client/workato_api/api/data_tables_api.py +604 -0
  64. workato_platform_cli/client/workato_api/api/export_api.py +621 -0
  65. workato_platform_cli/client/workato_api/api/folders_api.py +621 -0
  66. workato_platform_cli/client/workato_api/api/packages_api.py +1197 -0
  67. workato_platform_cli/client/workato_api/api/projects_api.py +590 -0
  68. workato_platform_cli/client/workato_api/api/properties_api.py +620 -0
  69. workato_platform_cli/client/workato_api/api/recipes_api.py +1379 -0
  70. workato_platform_cli/client/workato_api/api/users_api.py +285 -0
  71. workato_platform_cli/client/workato_api/api_client.py +807 -0
  72. workato_platform_cli/client/workato_api/api_response.py +21 -0
  73. workato_platform_cli/client/workato_api/configuration.py +601 -0
  74. workato_platform_cli/client/workato_api/docs/APIPlatformApi.md +844 -0
  75. workato_platform_cli/client/workato_api/docs/ApiClient.md +46 -0
  76. workato_platform_cli/client/workato_api/docs/ApiClientApiCollectionsInner.md +30 -0
  77. workato_platform_cli/client/workato_api/docs/ApiClientApiPoliciesInner.md +30 -0
  78. workato_platform_cli/client/workato_api/docs/ApiClientCreateRequest.md +46 -0
  79. workato_platform_cli/client/workato_api/docs/ApiClientListResponse.md +32 -0
  80. workato_platform_cli/client/workato_api/docs/ApiClientResponse.md +29 -0
  81. workato_platform_cli/client/workato_api/docs/ApiCollection.md +38 -0
  82. workato_platform_cli/client/workato_api/docs/ApiCollectionCreateRequest.md +32 -0
  83. workato_platform_cli/client/workato_api/docs/ApiEndpoint.md +41 -0
  84. workato_platform_cli/client/workato_api/docs/ApiKey.md +36 -0
  85. workato_platform_cli/client/workato_api/docs/ApiKeyCreateRequest.md +32 -0
  86. workato_platform_cli/client/workato_api/docs/ApiKeyListResponse.md +32 -0
  87. workato_platform_cli/client/workato_api/docs/ApiKeyResponse.md +29 -0
  88. workato_platform_cli/client/workato_api/docs/Asset.md +39 -0
  89. workato_platform_cli/client/workato_api/docs/AssetReference.md +37 -0
  90. workato_platform_cli/client/workato_api/docs/Connection.md +44 -0
  91. workato_platform_cli/client/workato_api/docs/ConnectionCreateRequest.md +35 -0
  92. workato_platform_cli/client/workato_api/docs/ConnectionUpdateRequest.md +34 -0
  93. workato_platform_cli/client/workato_api/docs/ConnectionsApi.md +526 -0
  94. workato_platform_cli/client/workato_api/docs/ConnectorAction.md +33 -0
  95. workato_platform_cli/client/workato_api/docs/ConnectorVersion.md +32 -0
  96. workato_platform_cli/client/workato_api/docs/ConnectorsApi.md +249 -0
  97. workato_platform_cli/client/workato_api/docs/CreateExportManifestRequest.md +29 -0
  98. workato_platform_cli/client/workato_api/docs/CreateFolderRequest.md +30 -0
  99. workato_platform_cli/client/workato_api/docs/CustomConnector.md +35 -0
  100. workato_platform_cli/client/workato_api/docs/CustomConnectorCodeResponse.md +29 -0
  101. workato_platform_cli/client/workato_api/docs/CustomConnectorCodeResponseData.md +29 -0
  102. workato_platform_cli/client/workato_api/docs/CustomConnectorListResponse.md +29 -0
  103. workato_platform_cli/client/workato_api/docs/DataTable.md +34 -0
  104. workato_platform_cli/client/workato_api/docs/DataTableColumn.md +37 -0
  105. workato_platform_cli/client/workato_api/docs/DataTableColumnRequest.md +37 -0
  106. workato_platform_cli/client/workato_api/docs/DataTableCreateRequest.md +31 -0
  107. workato_platform_cli/client/workato_api/docs/DataTableCreateResponse.md +29 -0
  108. workato_platform_cli/client/workato_api/docs/DataTableListResponse.md +29 -0
  109. workato_platform_cli/client/workato_api/docs/DataTableRelation.md +30 -0
  110. workato_platform_cli/client/workato_api/docs/DataTablesApi.md +172 -0
  111. workato_platform_cli/client/workato_api/docs/DeleteProject403Response.md +29 -0
  112. workato_platform_cli/client/workato_api/docs/Error.md +29 -0
  113. workato_platform_cli/client/workato_api/docs/ExportApi.md +175 -0
  114. workato_platform_cli/client/workato_api/docs/ExportManifestRequest.md +35 -0
  115. workato_platform_cli/client/workato_api/docs/ExportManifestResponse.md +29 -0
  116. workato_platform_cli/client/workato_api/docs/ExportManifestResponseResult.md +36 -0
  117. workato_platform_cli/client/workato_api/docs/Folder.md +35 -0
  118. workato_platform_cli/client/workato_api/docs/FolderAssetsResponse.md +29 -0
  119. workato_platform_cli/client/workato_api/docs/FolderAssetsResponseResult.md +29 -0
  120. workato_platform_cli/client/workato_api/docs/FolderCreationResponse.md +35 -0
  121. workato_platform_cli/client/workato_api/docs/FoldersApi.md +176 -0
  122. workato_platform_cli/client/workato_api/docs/ImportResults.md +32 -0
  123. workato_platform_cli/client/workato_api/docs/OAuthUrlResponse.md +29 -0
  124. workato_platform_cli/client/workato_api/docs/OAuthUrlResponseData.md +29 -0
  125. workato_platform_cli/client/workato_api/docs/OpenApiSpec.md +30 -0
  126. workato_platform_cli/client/workato_api/docs/PackageDetailsResponse.md +35 -0
  127. workato_platform_cli/client/workato_api/docs/PackageDetailsResponseRecipeStatusInner.md +30 -0
  128. workato_platform_cli/client/workato_api/docs/PackageResponse.md +33 -0
  129. workato_platform_cli/client/workato_api/docs/PackagesApi.md +364 -0
  130. workato_platform_cli/client/workato_api/docs/PicklistRequest.md +30 -0
  131. workato_platform_cli/client/workato_api/docs/PicklistResponse.md +29 -0
  132. workato_platform_cli/client/workato_api/docs/PlatformConnector.md +36 -0
  133. workato_platform_cli/client/workato_api/docs/PlatformConnectorListResponse.md +32 -0
  134. workato_platform_cli/client/workato_api/docs/Project.md +32 -0
  135. workato_platform_cli/client/workato_api/docs/ProjectsApi.md +173 -0
  136. workato_platform_cli/client/workato_api/docs/PropertiesApi.md +186 -0
  137. workato_platform_cli/client/workato_api/docs/Recipe.md +58 -0
  138. workato_platform_cli/client/workato_api/docs/RecipeConfigInner.md +33 -0
  139. workato_platform_cli/client/workato_api/docs/RecipeConnectionUpdateRequest.md +30 -0
  140. workato_platform_cli/client/workato_api/docs/RecipeListResponse.md +29 -0
  141. workato_platform_cli/client/workato_api/docs/RecipeStartResponse.md +31 -0
  142. workato_platform_cli/client/workato_api/docs/RecipesApi.md +367 -0
  143. workato_platform_cli/client/workato_api/docs/RuntimeUserConnectionCreateRequest.md +34 -0
  144. workato_platform_cli/client/workato_api/docs/RuntimeUserConnectionResponse.md +29 -0
  145. workato_platform_cli/client/workato_api/docs/RuntimeUserConnectionResponseData.md +30 -0
  146. workato_platform_cli/client/workato_api/docs/SuccessResponse.md +29 -0
  147. workato_platform_cli/client/workato_api/docs/UpsertProjectPropertiesRequest.md +29 -0
  148. workato_platform_cli/client/workato_api/docs/User.md +48 -0
  149. workato_platform_cli/client/workato_api/docs/UsersApi.md +84 -0
  150. workato_platform_cli/client/workato_api/docs/ValidationError.md +30 -0
  151. workato_platform_cli/client/workato_api/docs/ValidationErrorErrorsValue.md +28 -0
  152. workato_platform_cli/client/workato_api/exceptions.py +216 -0
  153. workato_platform_cli/client/workato_api/models/__init__.py +83 -0
  154. workato_platform_cli/client/workato_api/models/api_client.py +185 -0
  155. workato_platform_cli/client/workato_api/models/api_client_api_collections_inner.py +89 -0
  156. workato_platform_cli/client/workato_api/models/api_client_api_policies_inner.py +89 -0
  157. workato_platform_cli/client/workato_api/models/api_client_create_request.py +138 -0
  158. workato_platform_cli/client/workato_api/models/api_client_list_response.py +101 -0
  159. workato_platform_cli/client/workato_api/models/api_client_response.py +91 -0
  160. workato_platform_cli/client/workato_api/models/api_collection.py +110 -0
  161. workato_platform_cli/client/workato_api/models/api_collection_create_request.py +97 -0
  162. workato_platform_cli/client/workato_api/models/api_endpoint.py +117 -0
  163. workato_platform_cli/client/workato_api/models/api_key.py +102 -0
  164. workato_platform_cli/client/workato_api/models/api_key_create_request.py +93 -0
  165. workato_platform_cli/client/workato_api/models/api_key_list_response.py +101 -0
  166. workato_platform_cli/client/workato_api/models/api_key_response.py +91 -0
  167. workato_platform_cli/client/workato_api/models/asset.py +124 -0
  168. workato_platform_cli/client/workato_api/models/asset_reference.py +110 -0
  169. workato_platform_cli/client/workato_api/models/connection.py +173 -0
  170. workato_platform_cli/client/workato_api/models/connection_create_request.py +99 -0
  171. workato_platform_cli/client/workato_api/models/connection_update_request.py +97 -0
  172. workato_platform_cli/client/workato_api/models/connector_action.py +100 -0
  173. workato_platform_cli/client/workato_api/models/connector_version.py +99 -0
  174. workato_platform_cli/client/workato_api/models/create_export_manifest_request.py +91 -0
  175. workato_platform_cli/client/workato_api/models/create_folder_request.py +89 -0
  176. workato_platform_cli/client/workato_api/models/custom_connector.py +117 -0
  177. workato_platform_cli/client/workato_api/models/custom_connector_code_response.py +91 -0
  178. workato_platform_cli/client/workato_api/models/custom_connector_code_response_data.py +87 -0
  179. workato_platform_cli/client/workato_api/models/custom_connector_list_response.py +95 -0
  180. workato_platform_cli/client/workato_api/models/data_table.py +107 -0
  181. workato_platform_cli/client/workato_api/models/data_table_column.py +125 -0
  182. workato_platform_cli/client/workato_api/models/data_table_column_request.py +130 -0
  183. workato_platform_cli/client/workato_api/models/data_table_create_request.py +99 -0
  184. workato_platform_cli/client/workato_api/models/data_table_create_response.py +91 -0
  185. workato_platform_cli/client/workato_api/models/data_table_list_response.py +95 -0
  186. workato_platform_cli/client/workato_api/models/data_table_relation.py +90 -0
  187. workato_platform_cli/client/workato_api/models/delete_project403_response.py +87 -0
  188. workato_platform_cli/client/workato_api/models/error.py +87 -0
  189. workato_platform_cli/client/workato_api/models/export_manifest_request.py +107 -0
  190. workato_platform_cli/client/workato_api/models/export_manifest_response.py +91 -0
  191. workato_platform_cli/client/workato_api/models/export_manifest_response_result.py +112 -0
  192. workato_platform_cli/client/workato_api/models/folder.py +110 -0
  193. workato_platform_cli/client/workato_api/models/folder_assets_response.py +91 -0
  194. workato_platform_cli/client/workato_api/models/folder_assets_response_result.py +95 -0
  195. workato_platform_cli/client/workato_api/models/folder_creation_response.py +110 -0
  196. workato_platform_cli/client/workato_api/models/import_results.py +93 -0
  197. workato_platform_cli/client/workato_api/models/o_auth_url_response.py +91 -0
  198. workato_platform_cli/client/workato_api/models/o_auth_url_response_data.py +87 -0
  199. workato_platform_cli/client/workato_api/models/open_api_spec.py +96 -0
  200. workato_platform_cli/client/workato_api/models/package_details_response.py +126 -0
  201. workato_platform_cli/client/workato_api/models/package_details_response_recipe_status_inner.py +99 -0
  202. workato_platform_cli/client/workato_api/models/package_response.py +109 -0
  203. workato_platform_cli/client/workato_api/models/picklist_request.py +89 -0
  204. workato_platform_cli/client/workato_api/models/picklist_response.py +88 -0
  205. workato_platform_cli/client/workato_api/models/platform_connector.py +116 -0
  206. workato_platform_cli/client/workato_api/models/platform_connector_list_response.py +101 -0
  207. workato_platform_cli/client/workato_api/models/project.py +93 -0
  208. workato_platform_cli/client/workato_api/models/recipe.py +174 -0
  209. workato_platform_cli/client/workato_api/models/recipe_config_inner.py +100 -0
  210. workato_platform_cli/client/workato_api/models/recipe_connection_update_request.py +89 -0
  211. workato_platform_cli/client/workato_api/models/recipe_list_response.py +95 -0
  212. workato_platform_cli/client/workato_api/models/recipe_start_response.py +91 -0
  213. workato_platform_cli/client/workato_api/models/runtime_user_connection_create_request.py +97 -0
  214. workato_platform_cli/client/workato_api/models/runtime_user_connection_response.py +91 -0
  215. workato_platform_cli/client/workato_api/models/runtime_user_connection_response_data.py +89 -0
  216. workato_platform_cli/client/workato_api/models/success_response.py +87 -0
  217. workato_platform_cli/client/workato_api/models/upsert_project_properties_request.py +88 -0
  218. workato_platform_cli/client/workato_api/models/user.py +151 -0
  219. workato_platform_cli/client/workato_api/models/validation_error.py +102 -0
  220. workato_platform_cli/client/workato_api/models/validation_error_errors_value.py +143 -0
  221. workato_platform_cli/client/workato_api/rest.py +213 -0
  222. workato_platform_cli/client/workato_api/test/__init__.py +0 -0
  223. workato_platform_cli/client/workato_api/test/test_api_client.py +94 -0
  224. workato_platform_cli/client/workato_api/test/test_api_client_api_collections_inner.py +52 -0
  225. workato_platform_cli/client/workato_api/test/test_api_client_api_policies_inner.py +52 -0
  226. workato_platform_cli/client/workato_api/test/test_api_client_create_request.py +75 -0
  227. workato_platform_cli/client/workato_api/test/test_api_client_list_response.py +114 -0
  228. workato_platform_cli/client/workato_api/test/test_api_client_response.py +104 -0
  229. workato_platform_cli/client/workato_api/test/test_api_collection.py +72 -0
  230. workato_platform_cli/client/workato_api/test/test_api_collection_create_request.py +57 -0
  231. workato_platform_cli/client/workato_api/test/test_api_endpoint.py +75 -0
  232. workato_platform_cli/client/workato_api/test/test_api_key.py +64 -0
  233. workato_platform_cli/client/workato_api/test/test_api_key_create_request.py +56 -0
  234. workato_platform_cli/client/workato_api/test/test_api_key_list_response.py +78 -0
  235. workato_platform_cli/client/workato_api/test/test_api_key_response.py +68 -0
  236. workato_platform_cli/client/workato_api/test/test_api_platform_api.py +101 -0
  237. workato_platform_cli/client/workato_api/test/test_asset.py +67 -0
  238. workato_platform_cli/client/workato_api/test/test_asset_reference.py +62 -0
  239. workato_platform_cli/client/workato_api/test/test_connection.py +81 -0
  240. workato_platform_cli/client/workato_api/test/test_connection_create_request.py +59 -0
  241. workato_platform_cli/client/workato_api/test/test_connection_update_request.py +56 -0
  242. workato_platform_cli/client/workato_api/test/test_connections_api.py +73 -0
  243. workato_platform_cli/client/workato_api/test/test_connector_action.py +59 -0
  244. workato_platform_cli/client/workato_api/test/test_connector_version.py +58 -0
  245. workato_platform_cli/client/workato_api/test/test_connectors_api.py +52 -0
  246. workato_platform_cli/client/workato_api/test/test_create_export_manifest_request.py +88 -0
  247. workato_platform_cli/client/workato_api/test/test_create_folder_request.py +53 -0
  248. workato_platform_cli/client/workato_api/test/test_custom_connector.py +76 -0
  249. workato_platform_cli/client/workato_api/test/test_custom_connector_code_response.py +54 -0
  250. workato_platform_cli/client/workato_api/test/test_custom_connector_code_response_data.py +52 -0
  251. workato_platform_cli/client/workato_api/test/test_custom_connector_list_response.py +82 -0
  252. workato_platform_cli/client/workato_api/test/test_data_table.py +88 -0
  253. workato_platform_cli/client/workato_api/test/test_data_table_column.py +72 -0
  254. workato_platform_cli/client/workato_api/test/test_data_table_column_request.py +64 -0
  255. workato_platform_cli/client/workato_api/test/test_data_table_create_request.py +82 -0
  256. workato_platform_cli/client/workato_api/test/test_data_table_create_response.py +90 -0
  257. workato_platform_cli/client/workato_api/test/test_data_table_list_response.py +94 -0
  258. workato_platform_cli/client/workato_api/test/test_data_table_relation.py +54 -0
  259. workato_platform_cli/client/workato_api/test/test_data_tables_api.py +45 -0
  260. workato_platform_cli/client/workato_api/test/test_delete_project403_response.py +51 -0
  261. workato_platform_cli/client/workato_api/test/test_error.py +52 -0
  262. workato_platform_cli/client/workato_api/test/test_export_api.py +45 -0
  263. workato_platform_cli/client/workato_api/test/test_export_manifest_request.py +69 -0
  264. workato_platform_cli/client/workato_api/test/test_export_manifest_response.py +68 -0
  265. workato_platform_cli/client/workato_api/test/test_export_manifest_response_result.py +66 -0
  266. workato_platform_cli/client/workato_api/test/test_folder.py +64 -0
  267. workato_platform_cli/client/workato_api/test/test_folder_assets_response.py +80 -0
  268. workato_platform_cli/client/workato_api/test/test_folder_assets_response_result.py +78 -0
  269. workato_platform_cli/client/workato_api/test/test_folder_creation_response.py +64 -0
  270. workato_platform_cli/client/workato_api/test/test_folders_api.py +45 -0
  271. workato_platform_cli/client/workato_api/test/test_import_results.py +58 -0
  272. workato_platform_cli/client/workato_api/test/test_o_auth_url_response.py +54 -0
  273. workato_platform_cli/client/workato_api/test/test_o_auth_url_response_data.py +52 -0
  274. workato_platform_cli/client/workato_api/test/test_open_api_spec.py +54 -0
  275. workato_platform_cli/client/workato_api/test/test_package_details_response.py +64 -0
  276. workato_platform_cli/client/workato_api/test/test_package_details_response_recipe_status_inner.py +52 -0
  277. workato_platform_cli/client/workato_api/test/test_package_response.py +58 -0
  278. workato_platform_cli/client/workato_api/test/test_packages_api.py +59 -0
  279. workato_platform_cli/client/workato_api/test/test_picklist_request.py +53 -0
  280. workato_platform_cli/client/workato_api/test/test_picklist_response.py +52 -0
  281. workato_platform_cli/client/workato_api/test/test_platform_connector.py +94 -0
  282. workato_platform_cli/client/workato_api/test/test_platform_connector_list_response.py +106 -0
  283. workato_platform_cli/client/workato_api/test/test_project.py +57 -0
  284. workato_platform_cli/client/workato_api/test/test_projects_api.py +45 -0
  285. workato_platform_cli/client/workato_api/test/test_properties_api.py +45 -0
  286. workato_platform_cli/client/workato_api/test/test_recipe.py +124 -0
  287. workato_platform_cli/client/workato_api/test/test_recipe_config_inner.py +55 -0
  288. workato_platform_cli/client/workato_api/test/test_recipe_connection_update_request.py +54 -0
  289. workato_platform_cli/client/workato_api/test/test_recipe_list_response.py +134 -0
  290. workato_platform_cli/client/workato_api/test/test_recipe_start_response.py +54 -0
  291. workato_platform_cli/client/workato_api/test/test_recipes_api.py +59 -0
  292. workato_platform_cli/client/workato_api/test/test_runtime_user_connection_create_request.py +59 -0
  293. workato_platform_cli/client/workato_api/test/test_runtime_user_connection_response.py +56 -0
  294. workato_platform_cli/client/workato_api/test/test_runtime_user_connection_response_data.py +54 -0
  295. workato_platform_cli/client/workato_api/test/test_success_response.py +52 -0
  296. workato_platform_cli/client/workato_api/test/test_upsert_project_properties_request.py +52 -0
  297. workato_platform_cli/client/workato_api/test/test_user.py +85 -0
  298. workato_platform_cli/client/workato_api/test/test_users_api.py +38 -0
  299. workato_platform_cli/client/workato_api/test/test_validation_error.py +52 -0
  300. workato_platform_cli/client/workato_api/test/test_validation_error_errors_value.py +50 -0
  301. workato_platform_cli/client/workato_api_README.md +205 -0
  302. workato_platform_cli-1.0.0rc5.dev5.dist-info/METADATA +185 -0
  303. workato_platform_cli-1.0.0rc5.dev5.dist-info/RECORD +306 -0
  304. workato_platform_cli-1.0.0rc5.dev5.dist-info/WHEEL +4 -0
  305. workato_platform_cli-1.0.0rc5.dev5.dist-info/entry_points.txt +2 -0
  306. workato_platform_cli-1.0.0rc5.dev5.dist-info/licenses/LICENSE +7 -0
@@ -0,0 +1,1379 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Workato Platform API
5
+
6
+ Official Workato Platform API for managing recipes, connections, projects, and other automation resources. ## Authentication All endpoints require a Bearer token in the Authorization header. ## Base URL The base URL varies by region: - US: `https://www.workato.com` - EU: `https://app.eu.workato.com` - JP: `https://app.jp.workato.com` - SG: `https://app.sg.workato.com` - AU: `https://app.au.workato.com` - IL: `https://app.il.workato.com` - Trial: `https://app.trial.workato.com`
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from datetime import datetime
20
+ from pydantic import Field, StrictBool, StrictInt, StrictStr, field_validator
21
+ from typing import List, Optional
22
+ from typing_extensions import Annotated
23
+ from workato_platform_cli.client.workato_api.models.recipe_connection_update_request import RecipeConnectionUpdateRequest
24
+ from workato_platform_cli.client.workato_api.models.recipe_list_response import RecipeListResponse
25
+ from workato_platform_cli.client.workato_api.models.recipe_start_response import RecipeStartResponse
26
+ from workato_platform_cli.client.workato_api.models.success_response import SuccessResponse
27
+
28
+ from workato_platform_cli.client.workato_api.api_client import ApiClient, RequestSerialized
29
+ from workato_platform_cli.client.workato_api.api_response import ApiResponse
30
+ from workato_platform_cli.client.workato_api.rest import RESTResponseType
31
+
32
+
33
+ class RecipesApi:
34
+ """NOTE: This class is auto generated by OpenAPI Generator
35
+ Ref: https://openapi-generator.tech
36
+
37
+ Do not edit the class manually.
38
+ """
39
+
40
+ def __init__(self, api_client=None) -> None:
41
+ if api_client is None:
42
+ api_client = ApiClient.get_default()
43
+ self.api_client = api_client
44
+
45
+
46
+ @validate_call
47
+ async def list_recipes(
48
+ self,
49
+ adapter_names_all: Annotated[Optional[StrictStr], Field(description="Comma-separated adapter names (recipes must use ALL)")] = None,
50
+ adapter_names_any: Annotated[Optional[StrictStr], Field(description="Comma-separated adapter names (recipes must use ANY)")] = None,
51
+ folder_id: Annotated[Optional[StrictInt], Field(description="Return recipes in specified folder")] = None,
52
+ order: Annotated[Optional[StrictStr], Field(description="Set ordering method")] = None,
53
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Page number")] = None,
54
+ per_page: Annotated[Optional[Annotated[int, Field(le=100, strict=True, ge=1)]], Field(description="Number of recipes per page")] = None,
55
+ running: Annotated[Optional[StrictBool], Field(description="If true, returns only running recipes")] = None,
56
+ since_id: Annotated[Optional[StrictInt], Field(description="Return recipes with IDs lower than this value")] = None,
57
+ stopped_after: Annotated[Optional[datetime], Field(description="Exclude recipes stopped after this date (ISO 8601 format)")] = None,
58
+ stop_cause: Annotated[Optional[StrictStr], Field(description="Filter by stop reason")] = None,
59
+ updated_after: Annotated[Optional[datetime], Field(description="Include recipes updated after this date (ISO 8601 format)")] = None,
60
+ includes: Annotated[Optional[List[StrictStr]], Field(description="Additional fields to include (e.g., tags)")] = None,
61
+ exclude_code: Annotated[Optional[StrictBool], Field(description="Exclude recipe code from response for better performance")] = None,
62
+ _request_timeout: Union[
63
+ None,
64
+ Annotated[StrictFloat, Field(gt=0)],
65
+ Tuple[
66
+ Annotated[StrictFloat, Field(gt=0)],
67
+ Annotated[StrictFloat, Field(gt=0)]
68
+ ]
69
+ ] = None,
70
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
71
+ _content_type: Optional[StrictStr] = None,
72
+ _headers: Optional[Dict[StrictStr, Any]] = None,
73
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
74
+ ) -> RecipeListResponse:
75
+ """List recipes
76
+
77
+ Returns a list of recipes belonging to the authenticated user. Recipes are returned in descending ID order.
78
+
79
+ :param adapter_names_all: Comma-separated adapter names (recipes must use ALL)
80
+ :type adapter_names_all: str
81
+ :param adapter_names_any: Comma-separated adapter names (recipes must use ANY)
82
+ :type adapter_names_any: str
83
+ :param folder_id: Return recipes in specified folder
84
+ :type folder_id: int
85
+ :param order: Set ordering method
86
+ :type order: str
87
+ :param page: Page number
88
+ :type page: int
89
+ :param per_page: Number of recipes per page
90
+ :type per_page: int
91
+ :param running: If true, returns only running recipes
92
+ :type running: bool
93
+ :param since_id: Return recipes with IDs lower than this value
94
+ :type since_id: int
95
+ :param stopped_after: Exclude recipes stopped after this date (ISO 8601 format)
96
+ :type stopped_after: datetime
97
+ :param stop_cause: Filter by stop reason
98
+ :type stop_cause: str
99
+ :param updated_after: Include recipes updated after this date (ISO 8601 format)
100
+ :type updated_after: datetime
101
+ :param includes: Additional fields to include (e.g., tags)
102
+ :type includes: List[str]
103
+ :param exclude_code: Exclude recipe code from response for better performance
104
+ :type exclude_code: bool
105
+ :param _request_timeout: timeout setting for this request. If one
106
+ number provided, it will be total request
107
+ timeout. It can also be a pair (tuple) of
108
+ (connection, read) timeouts.
109
+ :type _request_timeout: int, tuple(int, int), optional
110
+ :param _request_auth: set to override the auth_settings for an a single
111
+ request; this effectively ignores the
112
+ authentication in the spec for a single request.
113
+ :type _request_auth: dict, optional
114
+ :param _content_type: force content-type for the request.
115
+ :type _content_type: str, Optional
116
+ :param _headers: set to override the headers for a single
117
+ request; this effectively ignores the headers
118
+ in the spec for a single request.
119
+ :type _headers: dict, optional
120
+ :param _host_index: set to override the host_index for a single
121
+ request; this effectively ignores the host_index
122
+ in the spec for a single request.
123
+ :type _host_index: int, optional
124
+ :return: Returns the result object.
125
+ """ # noqa: E501
126
+
127
+ _param = self._list_recipes_serialize(
128
+ adapter_names_all=adapter_names_all,
129
+ adapter_names_any=adapter_names_any,
130
+ folder_id=folder_id,
131
+ order=order,
132
+ page=page,
133
+ per_page=per_page,
134
+ running=running,
135
+ since_id=since_id,
136
+ stopped_after=stopped_after,
137
+ stop_cause=stop_cause,
138
+ updated_after=updated_after,
139
+ includes=includes,
140
+ exclude_code=exclude_code,
141
+ _request_auth=_request_auth,
142
+ _content_type=_content_type,
143
+ _headers=_headers,
144
+ _host_index=_host_index
145
+ )
146
+
147
+ _response_types_map: Dict[str, Optional[str]] = {
148
+ '200': "RecipeListResponse",
149
+ '401': "Error",
150
+ }
151
+ response_data = await self.api_client.call_api(
152
+ *_param,
153
+ _request_timeout=_request_timeout
154
+ )
155
+ await response_data.read()
156
+ return self.api_client.response_deserialize(
157
+ response_data=response_data,
158
+ response_types_map=_response_types_map,
159
+ ).data
160
+
161
+
162
+ @validate_call
163
+ async def list_recipes_with_http_info(
164
+ self,
165
+ adapter_names_all: Annotated[Optional[StrictStr], Field(description="Comma-separated adapter names (recipes must use ALL)")] = None,
166
+ adapter_names_any: Annotated[Optional[StrictStr], Field(description="Comma-separated adapter names (recipes must use ANY)")] = None,
167
+ folder_id: Annotated[Optional[StrictInt], Field(description="Return recipes in specified folder")] = None,
168
+ order: Annotated[Optional[StrictStr], Field(description="Set ordering method")] = None,
169
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Page number")] = None,
170
+ per_page: Annotated[Optional[Annotated[int, Field(le=100, strict=True, ge=1)]], Field(description="Number of recipes per page")] = None,
171
+ running: Annotated[Optional[StrictBool], Field(description="If true, returns only running recipes")] = None,
172
+ since_id: Annotated[Optional[StrictInt], Field(description="Return recipes with IDs lower than this value")] = None,
173
+ stopped_after: Annotated[Optional[datetime], Field(description="Exclude recipes stopped after this date (ISO 8601 format)")] = None,
174
+ stop_cause: Annotated[Optional[StrictStr], Field(description="Filter by stop reason")] = None,
175
+ updated_after: Annotated[Optional[datetime], Field(description="Include recipes updated after this date (ISO 8601 format)")] = None,
176
+ includes: Annotated[Optional[List[StrictStr]], Field(description="Additional fields to include (e.g., tags)")] = None,
177
+ exclude_code: Annotated[Optional[StrictBool], Field(description="Exclude recipe code from response for better performance")] = None,
178
+ _request_timeout: Union[
179
+ None,
180
+ Annotated[StrictFloat, Field(gt=0)],
181
+ Tuple[
182
+ Annotated[StrictFloat, Field(gt=0)],
183
+ Annotated[StrictFloat, Field(gt=0)]
184
+ ]
185
+ ] = None,
186
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
187
+ _content_type: Optional[StrictStr] = None,
188
+ _headers: Optional[Dict[StrictStr, Any]] = None,
189
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
190
+ ) -> ApiResponse[RecipeListResponse]:
191
+ """List recipes
192
+
193
+ Returns a list of recipes belonging to the authenticated user. Recipes are returned in descending ID order.
194
+
195
+ :param adapter_names_all: Comma-separated adapter names (recipes must use ALL)
196
+ :type adapter_names_all: str
197
+ :param adapter_names_any: Comma-separated adapter names (recipes must use ANY)
198
+ :type adapter_names_any: str
199
+ :param folder_id: Return recipes in specified folder
200
+ :type folder_id: int
201
+ :param order: Set ordering method
202
+ :type order: str
203
+ :param page: Page number
204
+ :type page: int
205
+ :param per_page: Number of recipes per page
206
+ :type per_page: int
207
+ :param running: If true, returns only running recipes
208
+ :type running: bool
209
+ :param since_id: Return recipes with IDs lower than this value
210
+ :type since_id: int
211
+ :param stopped_after: Exclude recipes stopped after this date (ISO 8601 format)
212
+ :type stopped_after: datetime
213
+ :param stop_cause: Filter by stop reason
214
+ :type stop_cause: str
215
+ :param updated_after: Include recipes updated after this date (ISO 8601 format)
216
+ :type updated_after: datetime
217
+ :param includes: Additional fields to include (e.g., tags)
218
+ :type includes: List[str]
219
+ :param exclude_code: Exclude recipe code from response for better performance
220
+ :type exclude_code: bool
221
+ :param _request_timeout: timeout setting for this request. If one
222
+ number provided, it will be total request
223
+ timeout. It can also be a pair (tuple) of
224
+ (connection, read) timeouts.
225
+ :type _request_timeout: int, tuple(int, int), optional
226
+ :param _request_auth: set to override the auth_settings for an a single
227
+ request; this effectively ignores the
228
+ authentication in the spec for a single request.
229
+ :type _request_auth: dict, optional
230
+ :param _content_type: force content-type for the request.
231
+ :type _content_type: str, Optional
232
+ :param _headers: set to override the headers for a single
233
+ request; this effectively ignores the headers
234
+ in the spec for a single request.
235
+ :type _headers: dict, optional
236
+ :param _host_index: set to override the host_index for a single
237
+ request; this effectively ignores the host_index
238
+ in the spec for a single request.
239
+ :type _host_index: int, optional
240
+ :return: Returns the result object.
241
+ """ # noqa: E501
242
+
243
+ _param = self._list_recipes_serialize(
244
+ adapter_names_all=adapter_names_all,
245
+ adapter_names_any=adapter_names_any,
246
+ folder_id=folder_id,
247
+ order=order,
248
+ page=page,
249
+ per_page=per_page,
250
+ running=running,
251
+ since_id=since_id,
252
+ stopped_after=stopped_after,
253
+ stop_cause=stop_cause,
254
+ updated_after=updated_after,
255
+ includes=includes,
256
+ exclude_code=exclude_code,
257
+ _request_auth=_request_auth,
258
+ _content_type=_content_type,
259
+ _headers=_headers,
260
+ _host_index=_host_index
261
+ )
262
+
263
+ _response_types_map: Dict[str, Optional[str]] = {
264
+ '200': "RecipeListResponse",
265
+ '401': "Error",
266
+ }
267
+ response_data = await self.api_client.call_api(
268
+ *_param,
269
+ _request_timeout=_request_timeout
270
+ )
271
+ await response_data.read()
272
+ return self.api_client.response_deserialize(
273
+ response_data=response_data,
274
+ response_types_map=_response_types_map,
275
+ )
276
+
277
+
278
+ @validate_call
279
+ async def list_recipes_without_preload_content(
280
+ self,
281
+ adapter_names_all: Annotated[Optional[StrictStr], Field(description="Comma-separated adapter names (recipes must use ALL)")] = None,
282
+ adapter_names_any: Annotated[Optional[StrictStr], Field(description="Comma-separated adapter names (recipes must use ANY)")] = None,
283
+ folder_id: Annotated[Optional[StrictInt], Field(description="Return recipes in specified folder")] = None,
284
+ order: Annotated[Optional[StrictStr], Field(description="Set ordering method")] = None,
285
+ page: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="Page number")] = None,
286
+ per_page: Annotated[Optional[Annotated[int, Field(le=100, strict=True, ge=1)]], Field(description="Number of recipes per page")] = None,
287
+ running: Annotated[Optional[StrictBool], Field(description="If true, returns only running recipes")] = None,
288
+ since_id: Annotated[Optional[StrictInt], Field(description="Return recipes with IDs lower than this value")] = None,
289
+ stopped_after: Annotated[Optional[datetime], Field(description="Exclude recipes stopped after this date (ISO 8601 format)")] = None,
290
+ stop_cause: Annotated[Optional[StrictStr], Field(description="Filter by stop reason")] = None,
291
+ updated_after: Annotated[Optional[datetime], Field(description="Include recipes updated after this date (ISO 8601 format)")] = None,
292
+ includes: Annotated[Optional[List[StrictStr]], Field(description="Additional fields to include (e.g., tags)")] = None,
293
+ exclude_code: Annotated[Optional[StrictBool], Field(description="Exclude recipe code from response for better performance")] = None,
294
+ _request_timeout: Union[
295
+ None,
296
+ Annotated[StrictFloat, Field(gt=0)],
297
+ Tuple[
298
+ Annotated[StrictFloat, Field(gt=0)],
299
+ Annotated[StrictFloat, Field(gt=0)]
300
+ ]
301
+ ] = None,
302
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
303
+ _content_type: Optional[StrictStr] = None,
304
+ _headers: Optional[Dict[StrictStr, Any]] = None,
305
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
306
+ ) -> RESTResponseType:
307
+ """List recipes
308
+
309
+ Returns a list of recipes belonging to the authenticated user. Recipes are returned in descending ID order.
310
+
311
+ :param adapter_names_all: Comma-separated adapter names (recipes must use ALL)
312
+ :type adapter_names_all: str
313
+ :param adapter_names_any: Comma-separated adapter names (recipes must use ANY)
314
+ :type adapter_names_any: str
315
+ :param folder_id: Return recipes in specified folder
316
+ :type folder_id: int
317
+ :param order: Set ordering method
318
+ :type order: str
319
+ :param page: Page number
320
+ :type page: int
321
+ :param per_page: Number of recipes per page
322
+ :type per_page: int
323
+ :param running: If true, returns only running recipes
324
+ :type running: bool
325
+ :param since_id: Return recipes with IDs lower than this value
326
+ :type since_id: int
327
+ :param stopped_after: Exclude recipes stopped after this date (ISO 8601 format)
328
+ :type stopped_after: datetime
329
+ :param stop_cause: Filter by stop reason
330
+ :type stop_cause: str
331
+ :param updated_after: Include recipes updated after this date (ISO 8601 format)
332
+ :type updated_after: datetime
333
+ :param includes: Additional fields to include (e.g., tags)
334
+ :type includes: List[str]
335
+ :param exclude_code: Exclude recipe code from response for better performance
336
+ :type exclude_code: bool
337
+ :param _request_timeout: timeout setting for this request. If one
338
+ number provided, it will be total request
339
+ timeout. It can also be a pair (tuple) of
340
+ (connection, read) timeouts.
341
+ :type _request_timeout: int, tuple(int, int), optional
342
+ :param _request_auth: set to override the auth_settings for an a single
343
+ request; this effectively ignores the
344
+ authentication in the spec for a single request.
345
+ :type _request_auth: dict, optional
346
+ :param _content_type: force content-type for the request.
347
+ :type _content_type: str, Optional
348
+ :param _headers: set to override the headers for a single
349
+ request; this effectively ignores the headers
350
+ in the spec for a single request.
351
+ :type _headers: dict, optional
352
+ :param _host_index: set to override the host_index for a single
353
+ request; this effectively ignores the host_index
354
+ in the spec for a single request.
355
+ :type _host_index: int, optional
356
+ :return: Returns the result object.
357
+ """ # noqa: E501
358
+
359
+ _param = self._list_recipes_serialize(
360
+ adapter_names_all=adapter_names_all,
361
+ adapter_names_any=adapter_names_any,
362
+ folder_id=folder_id,
363
+ order=order,
364
+ page=page,
365
+ per_page=per_page,
366
+ running=running,
367
+ since_id=since_id,
368
+ stopped_after=stopped_after,
369
+ stop_cause=stop_cause,
370
+ updated_after=updated_after,
371
+ includes=includes,
372
+ exclude_code=exclude_code,
373
+ _request_auth=_request_auth,
374
+ _content_type=_content_type,
375
+ _headers=_headers,
376
+ _host_index=_host_index
377
+ )
378
+
379
+ _response_types_map: Dict[str, Optional[str]] = {
380
+ '200': "RecipeListResponse",
381
+ '401': "Error",
382
+ }
383
+ response_data = await self.api_client.call_api(
384
+ *_param,
385
+ _request_timeout=_request_timeout
386
+ )
387
+ return response_data.response
388
+
389
+
390
+ def _list_recipes_serialize(
391
+ self,
392
+ adapter_names_all,
393
+ adapter_names_any,
394
+ folder_id,
395
+ order,
396
+ page,
397
+ per_page,
398
+ running,
399
+ since_id,
400
+ stopped_after,
401
+ stop_cause,
402
+ updated_after,
403
+ includes,
404
+ exclude_code,
405
+ _request_auth,
406
+ _content_type,
407
+ _headers,
408
+ _host_index,
409
+ ) -> RequestSerialized:
410
+
411
+ _host = None
412
+
413
+ _collection_formats: Dict[str, str] = {
414
+ 'includes[]': 'multi',
415
+ }
416
+
417
+ _path_params: Dict[str, str] = {}
418
+ _query_params: List[Tuple[str, str]] = []
419
+ _header_params: Dict[str, Optional[str]] = _headers or {}
420
+ _form_params: List[Tuple[str, str]] = []
421
+ _files: Dict[
422
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
423
+ ] = {}
424
+ _body_params: Optional[bytes] = None
425
+
426
+ # process the path parameters
427
+ # process the query parameters
428
+ if adapter_names_all is not None:
429
+
430
+ _query_params.append(('adapter_names_all', adapter_names_all))
431
+
432
+ if adapter_names_any is not None:
433
+
434
+ _query_params.append(('adapter_names_any', adapter_names_any))
435
+
436
+ if folder_id is not None:
437
+
438
+ _query_params.append(('folder_id', folder_id))
439
+
440
+ if order is not None:
441
+
442
+ _query_params.append(('order', order))
443
+
444
+ if page is not None:
445
+
446
+ _query_params.append(('page', page))
447
+
448
+ if per_page is not None:
449
+
450
+ _query_params.append(('per_page', per_page))
451
+
452
+ if running is not None:
453
+
454
+ _query_params.append(('running', running))
455
+
456
+ if since_id is not None:
457
+
458
+ _query_params.append(('since_id', since_id))
459
+
460
+ if stopped_after is not None:
461
+ if isinstance(stopped_after, datetime):
462
+ _query_params.append(
463
+ (
464
+ 'stopped_after',
465
+ stopped_after.strftime(
466
+ self.api_client.configuration.datetime_format
467
+ )
468
+ )
469
+ )
470
+ else:
471
+ _query_params.append(('stopped_after', stopped_after))
472
+
473
+ if stop_cause is not None:
474
+
475
+ _query_params.append(('stop_cause', stop_cause))
476
+
477
+ if updated_after is not None:
478
+ if isinstance(updated_after, datetime):
479
+ _query_params.append(
480
+ (
481
+ 'updated_after',
482
+ updated_after.strftime(
483
+ self.api_client.configuration.datetime_format
484
+ )
485
+ )
486
+ )
487
+ else:
488
+ _query_params.append(('updated_after', updated_after))
489
+
490
+ if includes is not None:
491
+
492
+ _query_params.append(('includes[]', includes))
493
+
494
+ if exclude_code is not None:
495
+
496
+ _query_params.append(('exclude_code', exclude_code))
497
+
498
+ # process the header parameters
499
+ # process the form parameters
500
+ # process the body parameter
501
+
502
+
503
+ # set the HTTP header `Accept`
504
+ if 'Accept' not in _header_params:
505
+ _header_params['Accept'] = self.api_client.select_header_accept(
506
+ [
507
+ 'application/json'
508
+ ]
509
+ )
510
+
511
+
512
+ # authentication setting
513
+ _auth_settings: List[str] = [
514
+ 'BearerAuth'
515
+ ]
516
+
517
+ return self.api_client.param_serialize(
518
+ method='GET',
519
+ resource_path='/api/recipes',
520
+ path_params=_path_params,
521
+ query_params=_query_params,
522
+ header_params=_header_params,
523
+ body=_body_params,
524
+ post_params=_form_params,
525
+ files=_files,
526
+ auth_settings=_auth_settings,
527
+ collection_formats=_collection_formats,
528
+ _host=_host,
529
+ _request_auth=_request_auth
530
+ )
531
+
532
+
533
+
534
+
535
+ @validate_call
536
+ async def start_recipe(
537
+ self,
538
+ recipe_id: Annotated[StrictInt, Field(description="Recipe ID")],
539
+ _request_timeout: Union[
540
+ None,
541
+ Annotated[StrictFloat, Field(gt=0)],
542
+ Tuple[
543
+ Annotated[StrictFloat, Field(gt=0)],
544
+ Annotated[StrictFloat, Field(gt=0)]
545
+ ]
546
+ ] = None,
547
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
548
+ _content_type: Optional[StrictStr] = None,
549
+ _headers: Optional[Dict[StrictStr, Any]] = None,
550
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
551
+ ) -> RecipeStartResponse:
552
+ """Start a recipe
553
+
554
+ Starts a recipe specified by recipe ID
555
+
556
+ :param recipe_id: Recipe ID (required)
557
+ :type recipe_id: int
558
+ :param _request_timeout: timeout setting for this request. If one
559
+ number provided, it will be total request
560
+ timeout. It can also be a pair (tuple) of
561
+ (connection, read) timeouts.
562
+ :type _request_timeout: int, tuple(int, int), optional
563
+ :param _request_auth: set to override the auth_settings for an a single
564
+ request; this effectively ignores the
565
+ authentication in the spec for a single request.
566
+ :type _request_auth: dict, optional
567
+ :param _content_type: force content-type for the request.
568
+ :type _content_type: str, Optional
569
+ :param _headers: set to override the headers for a single
570
+ request; this effectively ignores the headers
571
+ in the spec for a single request.
572
+ :type _headers: dict, optional
573
+ :param _host_index: set to override the host_index for a single
574
+ request; this effectively ignores the host_index
575
+ in the spec for a single request.
576
+ :type _host_index: int, optional
577
+ :return: Returns the result object.
578
+ """ # noqa: E501
579
+
580
+ _param = self._start_recipe_serialize(
581
+ recipe_id=recipe_id,
582
+ _request_auth=_request_auth,
583
+ _content_type=_content_type,
584
+ _headers=_headers,
585
+ _host_index=_host_index
586
+ )
587
+
588
+ _response_types_map: Dict[str, Optional[str]] = {
589
+ '200': "RecipeStartResponse",
590
+ '400': "Error",
591
+ '401': "Error",
592
+ '422': "Error",
593
+ '500': "Error",
594
+ }
595
+ response_data = await self.api_client.call_api(
596
+ *_param,
597
+ _request_timeout=_request_timeout
598
+ )
599
+ await response_data.read()
600
+ return self.api_client.response_deserialize(
601
+ response_data=response_data,
602
+ response_types_map=_response_types_map,
603
+ ).data
604
+
605
+
606
+ @validate_call
607
+ async def start_recipe_with_http_info(
608
+ self,
609
+ recipe_id: Annotated[StrictInt, Field(description="Recipe ID")],
610
+ _request_timeout: Union[
611
+ None,
612
+ Annotated[StrictFloat, Field(gt=0)],
613
+ Tuple[
614
+ Annotated[StrictFloat, Field(gt=0)],
615
+ Annotated[StrictFloat, Field(gt=0)]
616
+ ]
617
+ ] = None,
618
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
619
+ _content_type: Optional[StrictStr] = None,
620
+ _headers: Optional[Dict[StrictStr, Any]] = None,
621
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
622
+ ) -> ApiResponse[RecipeStartResponse]:
623
+ """Start a recipe
624
+
625
+ Starts a recipe specified by recipe ID
626
+
627
+ :param recipe_id: Recipe ID (required)
628
+ :type recipe_id: int
629
+ :param _request_timeout: timeout setting for this request. If one
630
+ number provided, it will be total request
631
+ timeout. It can also be a pair (tuple) of
632
+ (connection, read) timeouts.
633
+ :type _request_timeout: int, tuple(int, int), optional
634
+ :param _request_auth: set to override the auth_settings for an a single
635
+ request; this effectively ignores the
636
+ authentication in the spec for a single request.
637
+ :type _request_auth: dict, optional
638
+ :param _content_type: force content-type for the request.
639
+ :type _content_type: str, Optional
640
+ :param _headers: set to override the headers for a single
641
+ request; this effectively ignores the headers
642
+ in the spec for a single request.
643
+ :type _headers: dict, optional
644
+ :param _host_index: set to override the host_index for a single
645
+ request; this effectively ignores the host_index
646
+ in the spec for a single request.
647
+ :type _host_index: int, optional
648
+ :return: Returns the result object.
649
+ """ # noqa: E501
650
+
651
+ _param = self._start_recipe_serialize(
652
+ recipe_id=recipe_id,
653
+ _request_auth=_request_auth,
654
+ _content_type=_content_type,
655
+ _headers=_headers,
656
+ _host_index=_host_index
657
+ )
658
+
659
+ _response_types_map: Dict[str, Optional[str]] = {
660
+ '200': "RecipeStartResponse",
661
+ '400': "Error",
662
+ '401': "Error",
663
+ '422': "Error",
664
+ '500': "Error",
665
+ }
666
+ response_data = await self.api_client.call_api(
667
+ *_param,
668
+ _request_timeout=_request_timeout
669
+ )
670
+ await response_data.read()
671
+ return self.api_client.response_deserialize(
672
+ response_data=response_data,
673
+ response_types_map=_response_types_map,
674
+ )
675
+
676
+
677
+ @validate_call
678
+ async def start_recipe_without_preload_content(
679
+ self,
680
+ recipe_id: Annotated[StrictInt, Field(description="Recipe ID")],
681
+ _request_timeout: Union[
682
+ None,
683
+ Annotated[StrictFloat, Field(gt=0)],
684
+ Tuple[
685
+ Annotated[StrictFloat, Field(gt=0)],
686
+ Annotated[StrictFloat, Field(gt=0)]
687
+ ]
688
+ ] = None,
689
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
690
+ _content_type: Optional[StrictStr] = None,
691
+ _headers: Optional[Dict[StrictStr, Any]] = None,
692
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
693
+ ) -> RESTResponseType:
694
+ """Start a recipe
695
+
696
+ Starts a recipe specified by recipe ID
697
+
698
+ :param recipe_id: Recipe ID (required)
699
+ :type recipe_id: int
700
+ :param _request_timeout: timeout setting for this request. If one
701
+ number provided, it will be total request
702
+ timeout. It can also be a pair (tuple) of
703
+ (connection, read) timeouts.
704
+ :type _request_timeout: int, tuple(int, int), optional
705
+ :param _request_auth: set to override the auth_settings for an a single
706
+ request; this effectively ignores the
707
+ authentication in the spec for a single request.
708
+ :type _request_auth: dict, optional
709
+ :param _content_type: force content-type for the request.
710
+ :type _content_type: str, Optional
711
+ :param _headers: set to override the headers for a single
712
+ request; this effectively ignores the headers
713
+ in the spec for a single request.
714
+ :type _headers: dict, optional
715
+ :param _host_index: set to override the host_index for a single
716
+ request; this effectively ignores the host_index
717
+ in the spec for a single request.
718
+ :type _host_index: int, optional
719
+ :return: Returns the result object.
720
+ """ # noqa: E501
721
+
722
+ _param = self._start_recipe_serialize(
723
+ recipe_id=recipe_id,
724
+ _request_auth=_request_auth,
725
+ _content_type=_content_type,
726
+ _headers=_headers,
727
+ _host_index=_host_index
728
+ )
729
+
730
+ _response_types_map: Dict[str, Optional[str]] = {
731
+ '200': "RecipeStartResponse",
732
+ '400': "Error",
733
+ '401': "Error",
734
+ '422': "Error",
735
+ '500': "Error",
736
+ }
737
+ response_data = await self.api_client.call_api(
738
+ *_param,
739
+ _request_timeout=_request_timeout
740
+ )
741
+ return response_data.response
742
+
743
+
744
+ def _start_recipe_serialize(
745
+ self,
746
+ recipe_id,
747
+ _request_auth,
748
+ _content_type,
749
+ _headers,
750
+ _host_index,
751
+ ) -> RequestSerialized:
752
+
753
+ _host = None
754
+
755
+ _collection_formats: Dict[str, str] = {
756
+ }
757
+
758
+ _path_params: Dict[str, str] = {}
759
+ _query_params: List[Tuple[str, str]] = []
760
+ _header_params: Dict[str, Optional[str]] = _headers or {}
761
+ _form_params: List[Tuple[str, str]] = []
762
+ _files: Dict[
763
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
764
+ ] = {}
765
+ _body_params: Optional[bytes] = None
766
+
767
+ # process the path parameters
768
+ if recipe_id is not None:
769
+ _path_params['recipe_id'] = recipe_id
770
+ # process the query parameters
771
+ # process the header parameters
772
+ # process the form parameters
773
+ # process the body parameter
774
+
775
+
776
+ # set the HTTP header `Accept`
777
+ if 'Accept' not in _header_params:
778
+ _header_params['Accept'] = self.api_client.select_header_accept(
779
+ [
780
+ 'application/json'
781
+ ]
782
+ )
783
+
784
+
785
+ # authentication setting
786
+ _auth_settings: List[str] = [
787
+ 'BearerAuth'
788
+ ]
789
+
790
+ return self.api_client.param_serialize(
791
+ method='PUT',
792
+ resource_path='/api/recipes/{recipe_id}/start',
793
+ path_params=_path_params,
794
+ query_params=_query_params,
795
+ header_params=_header_params,
796
+ body=_body_params,
797
+ post_params=_form_params,
798
+ files=_files,
799
+ auth_settings=_auth_settings,
800
+ collection_formats=_collection_formats,
801
+ _host=_host,
802
+ _request_auth=_request_auth
803
+ )
804
+
805
+
806
+
807
+
808
+ @validate_call
809
+ async def stop_recipe(
810
+ self,
811
+ recipe_id: Annotated[StrictInt, Field(description="Recipe ID")],
812
+ _request_timeout: Union[
813
+ None,
814
+ Annotated[StrictFloat, Field(gt=0)],
815
+ Tuple[
816
+ Annotated[StrictFloat, Field(gt=0)],
817
+ Annotated[StrictFloat, Field(gt=0)]
818
+ ]
819
+ ] = None,
820
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
821
+ _content_type: Optional[StrictStr] = None,
822
+ _headers: Optional[Dict[StrictStr, Any]] = None,
823
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
824
+ ) -> SuccessResponse:
825
+ """Stop a recipe
826
+
827
+ Stops a recipe specified by recipe ID
828
+
829
+ :param recipe_id: Recipe ID (required)
830
+ :type recipe_id: int
831
+ :param _request_timeout: timeout setting for this request. If one
832
+ number provided, it will be total request
833
+ timeout. It can also be a pair (tuple) of
834
+ (connection, read) timeouts.
835
+ :type _request_timeout: int, tuple(int, int), optional
836
+ :param _request_auth: set to override the auth_settings for an a single
837
+ request; this effectively ignores the
838
+ authentication in the spec for a single request.
839
+ :type _request_auth: dict, optional
840
+ :param _content_type: force content-type for the request.
841
+ :type _content_type: str, Optional
842
+ :param _headers: set to override the headers for a single
843
+ request; this effectively ignores the headers
844
+ in the spec for a single request.
845
+ :type _headers: dict, optional
846
+ :param _host_index: set to override the host_index for a single
847
+ request; this effectively ignores the host_index
848
+ in the spec for a single request.
849
+ :type _host_index: int, optional
850
+ :return: Returns the result object.
851
+ """ # noqa: E501
852
+
853
+ _param = self._stop_recipe_serialize(
854
+ recipe_id=recipe_id,
855
+ _request_auth=_request_auth,
856
+ _content_type=_content_type,
857
+ _headers=_headers,
858
+ _host_index=_host_index
859
+ )
860
+
861
+ _response_types_map: Dict[str, Optional[str]] = {
862
+ '200': "SuccessResponse",
863
+ '400': "Error",
864
+ '401': "Error",
865
+ '404': "Error",
866
+ '500': "Error",
867
+ }
868
+ response_data = await self.api_client.call_api(
869
+ *_param,
870
+ _request_timeout=_request_timeout
871
+ )
872
+ await response_data.read()
873
+ return self.api_client.response_deserialize(
874
+ response_data=response_data,
875
+ response_types_map=_response_types_map,
876
+ ).data
877
+
878
+
879
+ @validate_call
880
+ async def stop_recipe_with_http_info(
881
+ self,
882
+ recipe_id: Annotated[StrictInt, Field(description="Recipe ID")],
883
+ _request_timeout: Union[
884
+ None,
885
+ Annotated[StrictFloat, Field(gt=0)],
886
+ Tuple[
887
+ Annotated[StrictFloat, Field(gt=0)],
888
+ Annotated[StrictFloat, Field(gt=0)]
889
+ ]
890
+ ] = None,
891
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
892
+ _content_type: Optional[StrictStr] = None,
893
+ _headers: Optional[Dict[StrictStr, Any]] = None,
894
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
895
+ ) -> ApiResponse[SuccessResponse]:
896
+ """Stop a recipe
897
+
898
+ Stops a recipe specified by recipe ID
899
+
900
+ :param recipe_id: Recipe ID (required)
901
+ :type recipe_id: int
902
+ :param _request_timeout: timeout setting for this request. If one
903
+ number provided, it will be total request
904
+ timeout. It can also be a pair (tuple) of
905
+ (connection, read) timeouts.
906
+ :type _request_timeout: int, tuple(int, int), optional
907
+ :param _request_auth: set to override the auth_settings for an a single
908
+ request; this effectively ignores the
909
+ authentication in the spec for a single request.
910
+ :type _request_auth: dict, optional
911
+ :param _content_type: force content-type for the request.
912
+ :type _content_type: str, Optional
913
+ :param _headers: set to override the headers for a single
914
+ request; this effectively ignores the headers
915
+ in the spec for a single request.
916
+ :type _headers: dict, optional
917
+ :param _host_index: set to override the host_index for a single
918
+ request; this effectively ignores the host_index
919
+ in the spec for a single request.
920
+ :type _host_index: int, optional
921
+ :return: Returns the result object.
922
+ """ # noqa: E501
923
+
924
+ _param = self._stop_recipe_serialize(
925
+ recipe_id=recipe_id,
926
+ _request_auth=_request_auth,
927
+ _content_type=_content_type,
928
+ _headers=_headers,
929
+ _host_index=_host_index
930
+ )
931
+
932
+ _response_types_map: Dict[str, Optional[str]] = {
933
+ '200': "SuccessResponse",
934
+ '400': "Error",
935
+ '401': "Error",
936
+ '404': "Error",
937
+ '500': "Error",
938
+ }
939
+ response_data = await self.api_client.call_api(
940
+ *_param,
941
+ _request_timeout=_request_timeout
942
+ )
943
+ await response_data.read()
944
+ return self.api_client.response_deserialize(
945
+ response_data=response_data,
946
+ response_types_map=_response_types_map,
947
+ )
948
+
949
+
950
+ @validate_call
951
+ async def stop_recipe_without_preload_content(
952
+ self,
953
+ recipe_id: Annotated[StrictInt, Field(description="Recipe ID")],
954
+ _request_timeout: Union[
955
+ None,
956
+ Annotated[StrictFloat, Field(gt=0)],
957
+ Tuple[
958
+ Annotated[StrictFloat, Field(gt=0)],
959
+ Annotated[StrictFloat, Field(gt=0)]
960
+ ]
961
+ ] = None,
962
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
963
+ _content_type: Optional[StrictStr] = None,
964
+ _headers: Optional[Dict[StrictStr, Any]] = None,
965
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
966
+ ) -> RESTResponseType:
967
+ """Stop a recipe
968
+
969
+ Stops a recipe specified by recipe ID
970
+
971
+ :param recipe_id: Recipe ID (required)
972
+ :type recipe_id: int
973
+ :param _request_timeout: timeout setting for this request. If one
974
+ number provided, it will be total request
975
+ timeout. It can also be a pair (tuple) of
976
+ (connection, read) timeouts.
977
+ :type _request_timeout: int, tuple(int, int), optional
978
+ :param _request_auth: set to override the auth_settings for an a single
979
+ request; this effectively ignores the
980
+ authentication in the spec for a single request.
981
+ :type _request_auth: dict, optional
982
+ :param _content_type: force content-type for the request.
983
+ :type _content_type: str, Optional
984
+ :param _headers: set to override the headers for a single
985
+ request; this effectively ignores the headers
986
+ in the spec for a single request.
987
+ :type _headers: dict, optional
988
+ :param _host_index: set to override the host_index for a single
989
+ request; this effectively ignores the host_index
990
+ in the spec for a single request.
991
+ :type _host_index: int, optional
992
+ :return: Returns the result object.
993
+ """ # noqa: E501
994
+
995
+ _param = self._stop_recipe_serialize(
996
+ recipe_id=recipe_id,
997
+ _request_auth=_request_auth,
998
+ _content_type=_content_type,
999
+ _headers=_headers,
1000
+ _host_index=_host_index
1001
+ )
1002
+
1003
+ _response_types_map: Dict[str, Optional[str]] = {
1004
+ '200': "SuccessResponse",
1005
+ '400': "Error",
1006
+ '401': "Error",
1007
+ '404': "Error",
1008
+ '500': "Error",
1009
+ }
1010
+ response_data = await self.api_client.call_api(
1011
+ *_param,
1012
+ _request_timeout=_request_timeout
1013
+ )
1014
+ return response_data.response
1015
+
1016
+
1017
+ def _stop_recipe_serialize(
1018
+ self,
1019
+ recipe_id,
1020
+ _request_auth,
1021
+ _content_type,
1022
+ _headers,
1023
+ _host_index,
1024
+ ) -> RequestSerialized:
1025
+
1026
+ _host = None
1027
+
1028
+ _collection_formats: Dict[str, str] = {
1029
+ }
1030
+
1031
+ _path_params: Dict[str, str] = {}
1032
+ _query_params: List[Tuple[str, str]] = []
1033
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1034
+ _form_params: List[Tuple[str, str]] = []
1035
+ _files: Dict[
1036
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1037
+ ] = {}
1038
+ _body_params: Optional[bytes] = None
1039
+
1040
+ # process the path parameters
1041
+ if recipe_id is not None:
1042
+ _path_params['recipe_id'] = recipe_id
1043
+ # process the query parameters
1044
+ # process the header parameters
1045
+ # process the form parameters
1046
+ # process the body parameter
1047
+
1048
+
1049
+ # set the HTTP header `Accept`
1050
+ if 'Accept' not in _header_params:
1051
+ _header_params['Accept'] = self.api_client.select_header_accept(
1052
+ [
1053
+ 'application/json'
1054
+ ]
1055
+ )
1056
+
1057
+
1058
+ # authentication setting
1059
+ _auth_settings: List[str] = [
1060
+ 'BearerAuth'
1061
+ ]
1062
+
1063
+ return self.api_client.param_serialize(
1064
+ method='PUT',
1065
+ resource_path='/api/recipes/{recipe_id}/stop',
1066
+ path_params=_path_params,
1067
+ query_params=_query_params,
1068
+ header_params=_header_params,
1069
+ body=_body_params,
1070
+ post_params=_form_params,
1071
+ files=_files,
1072
+ auth_settings=_auth_settings,
1073
+ collection_formats=_collection_formats,
1074
+ _host=_host,
1075
+ _request_auth=_request_auth
1076
+ )
1077
+
1078
+
1079
+
1080
+
1081
+ @validate_call
1082
+ async def update_recipe_connection(
1083
+ self,
1084
+ recipe_id: Annotated[StrictInt, Field(description="ID of the recipe")],
1085
+ recipe_connection_update_request: RecipeConnectionUpdateRequest,
1086
+ _request_timeout: Union[
1087
+ None,
1088
+ Annotated[StrictFloat, Field(gt=0)],
1089
+ Tuple[
1090
+ Annotated[StrictFloat, Field(gt=0)],
1091
+ Annotated[StrictFloat, Field(gt=0)]
1092
+ ]
1093
+ ] = None,
1094
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1095
+ _content_type: Optional[StrictStr] = None,
1096
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1097
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1098
+ ) -> SuccessResponse:
1099
+ """Update a connection for a recipe
1100
+
1101
+ Updates the chosen connection for a specific connector in a stopped recipe.
1102
+
1103
+ :param recipe_id: ID of the recipe (required)
1104
+ :type recipe_id: int
1105
+ :param recipe_connection_update_request: (required)
1106
+ :type recipe_connection_update_request: RecipeConnectionUpdateRequest
1107
+ :param _request_timeout: timeout setting for this request. If one
1108
+ number provided, it will be total request
1109
+ timeout. It can also be a pair (tuple) of
1110
+ (connection, read) timeouts.
1111
+ :type _request_timeout: int, tuple(int, int), optional
1112
+ :param _request_auth: set to override the auth_settings for an a single
1113
+ request; this effectively ignores the
1114
+ authentication in the spec for a single request.
1115
+ :type _request_auth: dict, optional
1116
+ :param _content_type: force content-type for the request.
1117
+ :type _content_type: str, Optional
1118
+ :param _headers: set to override the headers for a single
1119
+ request; this effectively ignores the headers
1120
+ in the spec for a single request.
1121
+ :type _headers: dict, optional
1122
+ :param _host_index: set to override the host_index for a single
1123
+ request; this effectively ignores the host_index
1124
+ in the spec for a single request.
1125
+ :type _host_index: int, optional
1126
+ :return: Returns the result object.
1127
+ """ # noqa: E501
1128
+
1129
+ _param = self._update_recipe_connection_serialize(
1130
+ recipe_id=recipe_id,
1131
+ recipe_connection_update_request=recipe_connection_update_request,
1132
+ _request_auth=_request_auth,
1133
+ _content_type=_content_type,
1134
+ _headers=_headers,
1135
+ _host_index=_host_index
1136
+ )
1137
+
1138
+ _response_types_map: Dict[str, Optional[str]] = {
1139
+ '200': "SuccessResponse",
1140
+ '400': "Error",
1141
+ '401': "Error",
1142
+ '403': "Error",
1143
+ '404': "Error",
1144
+ }
1145
+ response_data = await self.api_client.call_api(
1146
+ *_param,
1147
+ _request_timeout=_request_timeout
1148
+ )
1149
+ await response_data.read()
1150
+ return self.api_client.response_deserialize(
1151
+ response_data=response_data,
1152
+ response_types_map=_response_types_map,
1153
+ ).data
1154
+
1155
+
1156
+ @validate_call
1157
+ async def update_recipe_connection_with_http_info(
1158
+ self,
1159
+ recipe_id: Annotated[StrictInt, Field(description="ID of the recipe")],
1160
+ recipe_connection_update_request: RecipeConnectionUpdateRequest,
1161
+ _request_timeout: Union[
1162
+ None,
1163
+ Annotated[StrictFloat, Field(gt=0)],
1164
+ Tuple[
1165
+ Annotated[StrictFloat, Field(gt=0)],
1166
+ Annotated[StrictFloat, Field(gt=0)]
1167
+ ]
1168
+ ] = None,
1169
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1170
+ _content_type: Optional[StrictStr] = None,
1171
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1172
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1173
+ ) -> ApiResponse[SuccessResponse]:
1174
+ """Update a connection for a recipe
1175
+
1176
+ Updates the chosen connection for a specific connector in a stopped recipe.
1177
+
1178
+ :param recipe_id: ID of the recipe (required)
1179
+ :type recipe_id: int
1180
+ :param recipe_connection_update_request: (required)
1181
+ :type recipe_connection_update_request: RecipeConnectionUpdateRequest
1182
+ :param _request_timeout: timeout setting for this request. If one
1183
+ number provided, it will be total request
1184
+ timeout. It can also be a pair (tuple) of
1185
+ (connection, read) timeouts.
1186
+ :type _request_timeout: int, tuple(int, int), optional
1187
+ :param _request_auth: set to override the auth_settings for an a single
1188
+ request; this effectively ignores the
1189
+ authentication in the spec for a single request.
1190
+ :type _request_auth: dict, optional
1191
+ :param _content_type: force content-type for the request.
1192
+ :type _content_type: str, Optional
1193
+ :param _headers: set to override the headers for a single
1194
+ request; this effectively ignores the headers
1195
+ in the spec for a single request.
1196
+ :type _headers: dict, optional
1197
+ :param _host_index: set to override the host_index for a single
1198
+ request; this effectively ignores the host_index
1199
+ in the spec for a single request.
1200
+ :type _host_index: int, optional
1201
+ :return: Returns the result object.
1202
+ """ # noqa: E501
1203
+
1204
+ _param = self._update_recipe_connection_serialize(
1205
+ recipe_id=recipe_id,
1206
+ recipe_connection_update_request=recipe_connection_update_request,
1207
+ _request_auth=_request_auth,
1208
+ _content_type=_content_type,
1209
+ _headers=_headers,
1210
+ _host_index=_host_index
1211
+ )
1212
+
1213
+ _response_types_map: Dict[str, Optional[str]] = {
1214
+ '200': "SuccessResponse",
1215
+ '400': "Error",
1216
+ '401': "Error",
1217
+ '403': "Error",
1218
+ '404': "Error",
1219
+ }
1220
+ response_data = await self.api_client.call_api(
1221
+ *_param,
1222
+ _request_timeout=_request_timeout
1223
+ )
1224
+ await response_data.read()
1225
+ return self.api_client.response_deserialize(
1226
+ response_data=response_data,
1227
+ response_types_map=_response_types_map,
1228
+ )
1229
+
1230
+
1231
+ @validate_call
1232
+ async def update_recipe_connection_without_preload_content(
1233
+ self,
1234
+ recipe_id: Annotated[StrictInt, Field(description="ID of the recipe")],
1235
+ recipe_connection_update_request: RecipeConnectionUpdateRequest,
1236
+ _request_timeout: Union[
1237
+ None,
1238
+ Annotated[StrictFloat, Field(gt=0)],
1239
+ Tuple[
1240
+ Annotated[StrictFloat, Field(gt=0)],
1241
+ Annotated[StrictFloat, Field(gt=0)]
1242
+ ]
1243
+ ] = None,
1244
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1245
+ _content_type: Optional[StrictStr] = None,
1246
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1247
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1248
+ ) -> RESTResponseType:
1249
+ """Update a connection for a recipe
1250
+
1251
+ Updates the chosen connection for a specific connector in a stopped recipe.
1252
+
1253
+ :param recipe_id: ID of the recipe (required)
1254
+ :type recipe_id: int
1255
+ :param recipe_connection_update_request: (required)
1256
+ :type recipe_connection_update_request: RecipeConnectionUpdateRequest
1257
+ :param _request_timeout: timeout setting for this request. If one
1258
+ number provided, it will be total request
1259
+ timeout. It can also be a pair (tuple) of
1260
+ (connection, read) timeouts.
1261
+ :type _request_timeout: int, tuple(int, int), optional
1262
+ :param _request_auth: set to override the auth_settings for an a single
1263
+ request; this effectively ignores the
1264
+ authentication in the spec for a single request.
1265
+ :type _request_auth: dict, optional
1266
+ :param _content_type: force content-type for the request.
1267
+ :type _content_type: str, Optional
1268
+ :param _headers: set to override the headers for a single
1269
+ request; this effectively ignores the headers
1270
+ in the spec for a single request.
1271
+ :type _headers: dict, optional
1272
+ :param _host_index: set to override the host_index for a single
1273
+ request; this effectively ignores the host_index
1274
+ in the spec for a single request.
1275
+ :type _host_index: int, optional
1276
+ :return: Returns the result object.
1277
+ """ # noqa: E501
1278
+
1279
+ _param = self._update_recipe_connection_serialize(
1280
+ recipe_id=recipe_id,
1281
+ recipe_connection_update_request=recipe_connection_update_request,
1282
+ _request_auth=_request_auth,
1283
+ _content_type=_content_type,
1284
+ _headers=_headers,
1285
+ _host_index=_host_index
1286
+ )
1287
+
1288
+ _response_types_map: Dict[str, Optional[str]] = {
1289
+ '200': "SuccessResponse",
1290
+ '400': "Error",
1291
+ '401': "Error",
1292
+ '403': "Error",
1293
+ '404': "Error",
1294
+ }
1295
+ response_data = await self.api_client.call_api(
1296
+ *_param,
1297
+ _request_timeout=_request_timeout
1298
+ )
1299
+ return response_data.response
1300
+
1301
+
1302
+ def _update_recipe_connection_serialize(
1303
+ self,
1304
+ recipe_id,
1305
+ recipe_connection_update_request,
1306
+ _request_auth,
1307
+ _content_type,
1308
+ _headers,
1309
+ _host_index,
1310
+ ) -> RequestSerialized:
1311
+
1312
+ _host = None
1313
+
1314
+ _collection_formats: Dict[str, str] = {
1315
+ }
1316
+
1317
+ _path_params: Dict[str, str] = {}
1318
+ _query_params: List[Tuple[str, str]] = []
1319
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1320
+ _form_params: List[Tuple[str, str]] = []
1321
+ _files: Dict[
1322
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1323
+ ] = {}
1324
+ _body_params: Optional[bytes] = None
1325
+
1326
+ # process the path parameters
1327
+ if recipe_id is not None:
1328
+ _path_params['recipe_id'] = recipe_id
1329
+ # process the query parameters
1330
+ # process the header parameters
1331
+ # process the form parameters
1332
+ # process the body parameter
1333
+ if recipe_connection_update_request is not None:
1334
+ _body_params = recipe_connection_update_request
1335
+
1336
+
1337
+ # set the HTTP header `Accept`
1338
+ if 'Accept' not in _header_params:
1339
+ _header_params['Accept'] = self.api_client.select_header_accept(
1340
+ [
1341
+ 'application/json'
1342
+ ]
1343
+ )
1344
+
1345
+ # set the HTTP header `Content-Type`
1346
+ if _content_type:
1347
+ _header_params['Content-Type'] = _content_type
1348
+ else:
1349
+ _default_content_type = (
1350
+ self.api_client.select_header_content_type(
1351
+ [
1352
+ 'application/json'
1353
+ ]
1354
+ )
1355
+ )
1356
+ if _default_content_type is not None:
1357
+ _header_params['Content-Type'] = _default_content_type
1358
+
1359
+ # authentication setting
1360
+ _auth_settings: List[str] = [
1361
+ 'BearerAuth'
1362
+ ]
1363
+
1364
+ return self.api_client.param_serialize(
1365
+ method='PUT',
1366
+ resource_path='/api/recipes/{recipe_id}/connect',
1367
+ path_params=_path_params,
1368
+ query_params=_query_params,
1369
+ header_params=_header_params,
1370
+ body=_body_params,
1371
+ post_params=_form_params,
1372
+ files=_files,
1373
+ auth_settings=_auth_settings,
1374
+ collection_formats=_collection_formats,
1375
+ _host=_host,
1376
+ _request_auth=_request_auth
1377
+ )
1378
+
1379
+