@zlayer/api-client 0.10.86 → 0.11.7

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 (345) hide show
  1. package/.openapi-generator/FILES +58 -1
  2. package/README.md +48 -6
  3. package/dist/apis/AuthenticationApi.d.ts +43 -1
  4. package/dist/apis/AuthenticationApi.js +112 -0
  5. package/dist/apis/ContainerNetworksApi.d.ts +123 -0
  6. package/dist/apis/ContainerNetworksApi.js +331 -0
  7. package/dist/apis/ContainersApi.d.ts +7 -4
  8. package/dist/apis/ContainersApi.js +13 -4
  9. package/dist/apis/EventsApi.d.ts +35 -0
  10. package/dist/apis/EventsApi.js +81 -0
  11. package/dist/apis/PermissionsApi.d.ts +18 -0
  12. package/dist/apis/PermissionsApi.js +46 -0
  13. package/dist/apis/SecretsApi.d.ts +38 -1
  14. package/dist/apis/SecretsApi.js +109 -0
  15. package/dist/apis/VolumesApi.d.ts +41 -7
  16. package/dist/apis/VolumesApi.js +102 -5
  17. package/dist/apis/index.d.ts +2 -0
  18. package/dist/apis/index.js +2 -0
  19. package/dist/models/BridgeNetwork.d.ts +72 -0
  20. package/dist/models/BridgeNetwork.js +67 -0
  21. package/dist/models/BridgeNetworkAttachment.d.ts +50 -0
  22. package/dist/models/BridgeNetworkAttachment.js +56 -0
  23. package/dist/models/BridgeNetworkDetails.d.ts +79 -0
  24. package/dist/models/BridgeNetworkDetails.js +72 -0
  25. package/dist/models/BridgeNetworkDriver.d.ts +25 -0
  26. package/dist/models/BridgeNetworkDriver.js +51 -0
  27. package/dist/models/ConnectBridgeNetworkRequest.d.ts +45 -0
  28. package/dist/models/ConnectBridgeNetworkRequest.js +54 -0
  29. package/dist/models/ContainerEvent.d.ts +82 -0
  30. package/dist/models/ContainerEvent.js +67 -0
  31. package/dist/models/ContainerEventKind.d.ts +27 -0
  32. package/dist/models/ContainerEventKind.js +53 -0
  33. package/dist/models/ContainerHealthInfo.d.ts +53 -0
  34. package/dist/models/ContainerHealthInfo.js +54 -0
  35. package/dist/models/ContainerInfo.d.ts +40 -0
  36. package/dist/models/ContainerInfo.js +13 -0
  37. package/dist/models/ContainerRestartKind.d.ts +27 -0
  38. package/dist/models/ContainerRestartKind.js +53 -0
  39. package/dist/models/ContainerRestartPolicy.d.ts +53 -0
  40. package/dist/models/ContainerRestartPolicy.js +55 -0
  41. package/dist/models/ContainerWaitResponse.d.ts +30 -2
  42. package/dist/models/ContainerWaitResponse.js +6 -0
  43. package/dist/models/CreateBridgeNetworkRequest.d.ts +60 -0
  44. package/dist/models/CreateBridgeNetworkRequest.js +59 -0
  45. package/dist/models/CreateContainerRequest.d.ts +77 -0
  46. package/dist/models/CreateContainerRequest.js +23 -0
  47. package/dist/models/CreateVolumeRequest.d.ts +54 -0
  48. package/dist/models/CreateVolumeRequest.js +56 -0
  49. package/dist/models/DisconnectBridgeNetworkRequest.d.ts +38 -0
  50. package/dist/models/DisconnectBridgeNetworkRequest.js +52 -0
  51. package/dist/models/HealthCheckRequest.d.ts +94 -0
  52. package/dist/models/HealthCheckRequest.js +66 -0
  53. package/dist/models/NetworkAttachmentInfo.d.ts +49 -0
  54. package/dist/models/NetworkAttachmentInfo.js +54 -0
  55. package/dist/models/NetworkAttachmentRequest.d.ts +51 -0
  56. package/dist/models/NetworkAttachmentRequest.js +54 -0
  57. package/dist/models/OidcCallbackResponse.d.ts +47 -0
  58. package/dist/models/OidcCallbackResponse.js +59 -0
  59. package/dist/models/OidcProviderPublic.d.ts +39 -0
  60. package/dist/models/OidcProviderPublic.js +54 -0
  61. package/dist/models/PortMapping.d.ts +55 -0
  62. package/dist/models/PortMapping.js +57 -0
  63. package/dist/models/PortProtocol.d.ts +25 -0
  64. package/dist/models/PortProtocol.js +51 -0
  65. package/dist/models/PullImageRequest.d.ts +18 -0
  66. package/dist/models/PullImageRequest.js +5 -0
  67. package/dist/models/RegistryAuth.d.ts +52 -0
  68. package/dist/models/RegistryAuth.js +57 -0
  69. package/dist/models/RegistryAuthType.d.ts +25 -0
  70. package/dist/models/RegistryAuthType.js +51 -0
  71. package/dist/models/RevealAllSecretsResponse.d.ts +41 -0
  72. package/dist/models/RevealAllSecretsResponse.js +54 -0
  73. package/dist/models/RotateSecretRequest.d.ts +32 -0
  74. package/dist/models/RotateSecretRequest.js +50 -0
  75. package/dist/models/RotateSecretResponse.d.ts +46 -0
  76. package/dist/models/RotateSecretResponse.js +56 -0
  77. package/dist/models/VolumeInfo.d.ts +70 -0
  78. package/dist/models/VolumeInfo.js +64 -0
  79. package/dist/models/VolumeMount.d.ts +16 -3
  80. package/dist/models/VolumeMount.js +4 -3
  81. package/dist/models/VolumeMountType.d.ts +30 -0
  82. package/dist/models/VolumeMountType.js +56 -0
  83. package/dist/models/VolumeSummary.d.ts +7 -4
  84. package/dist/models/index.d.ts +27 -0
  85. package/dist/models/index.js +27 -0
  86. package/docs/AddMemberRequest.md +1 -1
  87. package/docs/AuditApi.md +3 -3
  88. package/docs/AuditEntry.md +1 -1
  89. package/docs/AuthenticationApi.md +212 -18
  90. package/docs/BackendGroupInfo.md +1 -1
  91. package/docs/BackendInfo.md +1 -1
  92. package/docs/BackendsResponse.md +1 -1
  93. package/docs/BootstrapRequest.md +1 -1
  94. package/docs/BridgeNetwork.md +47 -0
  95. package/docs/BridgeNetworkAttachment.md +41 -0
  96. package/docs/BridgeNetworkDetails.md +49 -0
  97. package/docs/BridgeNetworkDriver.md +33 -0
  98. package/docs/BuildApi.md +21 -21
  99. package/docs/BuildKind.md +1 -1
  100. package/docs/BuildRequest.md +1 -1
  101. package/docs/BuildRequestWithContext.md +1 -1
  102. package/docs/BuildStateEnum.md +1 -1
  103. package/docs/BuildStatus.md +1 -1
  104. package/docs/BulkImportResponse.md +1 -1
  105. package/docs/CertInfo.md +1 -1
  106. package/docs/ClusterApi.md +12 -12
  107. package/docs/ClusterJoinRequest.md +1 -1
  108. package/docs/ClusterJoinResponse.md +1 -1
  109. package/docs/ClusterNodeSummary.md +1 -1
  110. package/docs/ClusterPeer.md +1 -1
  111. package/docs/ConnectBridgeNetworkRequest.md +39 -0
  112. package/docs/ContainerEvent.md +47 -0
  113. package/docs/ContainerEventKind.md +33 -0
  114. package/docs/ContainerExecRequest.md +1 -1
  115. package/docs/ContainerExecResponse.md +1 -1
  116. package/docs/ContainerHealthInfo.md +39 -0
  117. package/docs/ContainerInfo.md +11 -1
  118. package/docs/ContainerNetworksApi.md +466 -0
  119. package/docs/ContainerResourceLimits.md +1 -1
  120. package/docs/ContainerRestartKind.md +33 -0
  121. package/docs/ContainerRestartPolicy.md +39 -0
  122. package/docs/ContainerStatsResponse.md +1 -1
  123. package/docs/ContainerWaitResponse.md +8 -2
  124. package/docs/ContainersApi.md +51 -42
  125. package/docs/CreateBridgeNetworkRequest.md +43 -0
  126. package/docs/CreateContainerRequest.md +19 -1
  127. package/docs/CreateDeploymentRequest.md +1 -1
  128. package/docs/CreateEnvironmentRequest.md +1 -1
  129. package/docs/CreateGitCredentialRequest.md +1 -1
  130. package/docs/CreateGroupRequest.md +1 -1
  131. package/docs/CreateNodeTunnelRequest.md +1 -1
  132. package/docs/CreateNodeTunnelResponse.md +1 -1
  133. package/docs/CreateNotifierRequest.md +1 -1
  134. package/docs/CreateProjectRequest.md +1 -1
  135. package/docs/CreateRegistryCredentialRequest.md +1 -1
  136. package/docs/CreateSecretRequest.md +1 -1
  137. package/docs/CreateSyncRequest.md +1 -1
  138. package/docs/CreateTaskRequest.md +1 -1
  139. package/docs/CreateTunnelRequest.md +1 -1
  140. package/docs/CreateTunnelResponse.md +1 -1
  141. package/docs/CreateUserRequest.md +1 -1
  142. package/docs/CreateVariableRequest.md +1 -1
  143. package/docs/CreateVolumeRequest.md +41 -0
  144. package/docs/CreateWorkflowRequest.md +1 -1
  145. package/docs/CredentialsApi.md +18 -18
  146. package/docs/CronApi.md +15 -15
  147. package/docs/CronJobResponse.md +1 -1
  148. package/docs/CronStatusResponse.md +1 -1
  149. package/docs/CsrfResponse.md +1 -1
  150. package/docs/DeploymentDetails.md +1 -1
  151. package/docs/DeploymentSummary.md +1 -1
  152. package/docs/DeploymentsApi.md +12 -12
  153. package/docs/DisconnectBridgeNetworkRequest.md +37 -0
  154. package/docs/DnsStatusResponse.md +1 -1
  155. package/docs/EnvironmentsApi.md +15 -15
  156. package/docs/EventsApi.md +85 -0
  157. package/docs/ForceLeaderRequest.md +1 -1
  158. package/docs/ForceLeaderResponse.md +1 -1
  159. package/docs/GitCredentialKindSchema.md +1 -1
  160. package/docs/GitCredentialResponse.md +1 -1
  161. package/docs/GpuInfoSummary.md +1 -1
  162. package/docs/GpuUtilizationReport.md +1 -1
  163. package/docs/GrantPermissionRequest.md +1 -1
  164. package/docs/GroupMembersResponse.md +1 -1
  165. package/docs/GroupsApi.md +21 -21
  166. package/docs/HealthApi.md +6 -6
  167. package/docs/HealthCheckRequest.md +51 -0
  168. package/docs/HealthResponse.md +1 -1
  169. package/docs/HeartbeatRequest.md +1 -1
  170. package/docs/ImageInfoDto.md +1 -1
  171. package/docs/ImagesApi.md +15 -15
  172. package/docs/InternalApi.md +6 -6
  173. package/docs/InternalScaleRequest.md +1 -1
  174. package/docs/InternalScaleResponse.md +1 -1
  175. package/docs/IpAllocationResponse.md +1 -1
  176. package/docs/JobExecutionResponse.md +1 -1
  177. package/docs/JobsApi.md +12 -12
  178. package/docs/JoinTokenResponse.md +1 -1
  179. package/docs/KillContainerRequest.md +1 -1
  180. package/docs/LinkDeploymentRequest.md +1 -1
  181. package/docs/LoginRequest.md +1 -1
  182. package/docs/LoginResponse.md +1 -1
  183. package/docs/NetworkAttachmentInfo.md +39 -0
  184. package/docs/NetworkAttachmentRequest.md +39 -0
  185. package/docs/NetworkSummary.md +1 -1
  186. package/docs/NetworksApi.md +15 -15
  187. package/docs/NodeDetails.md +1 -1
  188. package/docs/NodeResourceInfo.md +1 -1
  189. package/docs/NodeSummary.md +1 -1
  190. package/docs/NodesApi.md +12 -12
  191. package/docs/NotifierConfig.md +1 -1
  192. package/docs/NotifierConfigOneOf.md +1 -1
  193. package/docs/NotifierConfigOneOf1.md +1 -1
  194. package/docs/NotifierConfigOneOf2.md +1 -1
  195. package/docs/NotifierConfigOneOf3.md +1 -1
  196. package/docs/NotifierKind.md +1 -1
  197. package/docs/NotifiersApi.md +18 -18
  198. package/docs/OidcCallbackResponse.md +39 -0
  199. package/docs/OidcProviderPublic.md +37 -0
  200. package/docs/OverlayApi.md +12 -12
  201. package/docs/OverlayStatusResponse.md +1 -1
  202. package/docs/PeerInfo.md +1 -1
  203. package/docs/PeerListResponse.md +1 -1
  204. package/docs/PermissionLevel.md +1 -1
  205. package/docs/PermissionsApi.md +80 -9
  206. package/docs/PortMapping.md +41 -0
  207. package/docs/PortProtocol.md +33 -0
  208. package/docs/ProjectPullResponse.md +1 -1
  209. package/docs/ProjectsApi.md +27 -27
  210. package/docs/ProxyApi.md +12 -12
  211. package/docs/PruneResultDto.md +1 -1
  212. package/docs/PullImageRequest.md +5 -1
  213. package/docs/PullImageResponse.md +1 -1
  214. package/docs/RegisteredServiceInfo.md +1 -1
  215. package/docs/RegistryAuth.md +39 -0
  216. package/docs/RegistryAuthType.md +33 -0
  217. package/docs/RegistryAuthTypeSchema.md +1 -1
  218. package/docs/RegistryCredentialResponse.md +1 -1
  219. package/docs/ReplicationInfo.md +1 -1
  220. package/docs/RestartContainerRequest.md +1 -1
  221. package/docs/RevealAllSecretsResponse.md +37 -0
  222. package/docs/RotateSecretRequest.md +35 -0
  223. package/docs/RotateSecretResponse.md +39 -0
  224. package/docs/RouteInfo.md +1 -1
  225. package/docs/RoutesResponse.md +1 -1
  226. package/docs/ScaleRequest.md +1 -1
  227. package/docs/SecretMetadataResponse.md +1 -1
  228. package/docs/SecretsApi.md +175 -15
  229. package/docs/ServiceDetails.md +1 -1
  230. package/docs/ServiceEndpoint.md +1 -1
  231. package/docs/ServiceHealthInfo.md +1 -1
  232. package/docs/ServiceMetrics.md +1 -1
  233. package/docs/ServiceSummary.md +1 -1
  234. package/docs/ServicesApi.md +12 -12
  235. package/docs/SetPasswordRequest.md +1 -1
  236. package/docs/StepResult.md +1 -1
  237. package/docs/StopContainerRequest.md +1 -1
  238. package/docs/StorageApi.md +3 -3
  239. package/docs/StorageStatusResponse.md +1 -1
  240. package/docs/StoredEnvironment.md +1 -1
  241. package/docs/StoredNotifier.md +1 -1
  242. package/docs/StoredPermission.md +1 -1
  243. package/docs/StoredProject.md +1 -1
  244. package/docs/StoredSync.md +1 -1
  245. package/docs/StoredTask.md +1 -1
  246. package/docs/StoredUserGroup.md +1 -1
  247. package/docs/StoredVariable.md +1 -1
  248. package/docs/StoredWorkflow.md +1 -1
  249. package/docs/StreamBackendInfo.md +1 -1
  250. package/docs/StreamInfo.md +1 -1
  251. package/docs/StreamsResponse.md +1 -1
  252. package/docs/SubjectKind.md +1 -1
  253. package/docs/SuccessResponse.md +1 -1
  254. package/docs/SyncApplyResponse.md +1 -1
  255. package/docs/SyncDiffResponse.md +1 -1
  256. package/docs/SyncResourceResponse.md +1 -1
  257. package/docs/SyncResourceResult.md +1 -1
  258. package/docs/SyncsApi.md +15 -15
  259. package/docs/TagImageRequest.md +1 -1
  260. package/docs/TaskKind.md +1 -1
  261. package/docs/TaskRun.md +1 -1
  262. package/docs/TasksApi.md +18 -18
  263. package/docs/TemplateInfo.md +1 -1
  264. package/docs/TestNotifierResponse.md +1 -1
  265. package/docs/TlsResponse.md +1 -1
  266. package/docs/TokenRequest.md +1 -1
  267. package/docs/TokenResponse.md +1 -1
  268. package/docs/TriggerBuildResponse.md +1 -1
  269. package/docs/TriggerCronResponse.md +1 -1
  270. package/docs/TriggerJobResponse.md +1 -1
  271. package/docs/TunnelStatus.md +1 -1
  272. package/docs/TunnelSummary.md +1 -1
  273. package/docs/TunnelsApi.md +18 -18
  274. package/docs/UpdateEnvironmentRequest.md +1 -1
  275. package/docs/UpdateGroupRequest.md +1 -1
  276. package/docs/UpdateLabelsRequest.md +1 -1
  277. package/docs/UpdateLabelsResponse.md +1 -1
  278. package/docs/UpdateNotifierRequest.md +1 -1
  279. package/docs/UpdateProjectRequest.md +1 -1
  280. package/docs/UpdateUserRequest.md +1 -1
  281. package/docs/UpdateVariableRequest.md +1 -1
  282. package/docs/UserRole.md +1 -1
  283. package/docs/UserView.md +1 -1
  284. package/docs/UsersApi.md +18 -18
  285. package/docs/VariablesApi.md +15 -15
  286. package/docs/VolumeInfo.md +45 -0
  287. package/docs/VolumeMount.md +4 -2
  288. package/docs/VolumeMountType.md +33 -0
  289. package/docs/VolumeSummary.md +2 -2
  290. package/docs/VolumesApi.md +163 -13
  291. package/docs/WebhookInfoResponse.md +1 -1
  292. package/docs/WebhookResponse.md +1 -1
  293. package/docs/WebhooksApi.md +9 -9
  294. package/docs/WorkflowAction.md +1 -1
  295. package/docs/WorkflowActionOneOf.md +1 -1
  296. package/docs/WorkflowActionOneOf1.md +1 -1
  297. package/docs/WorkflowActionOneOf2.md +1 -1
  298. package/docs/WorkflowActionOneOf3.md +1 -1
  299. package/docs/WorkflowRun.md +1 -1
  300. package/docs/WorkflowRunStatus.md +1 -1
  301. package/docs/WorkflowStep.md +1 -1
  302. package/docs/WorkflowsApi.md +18 -18
  303. package/package.json +1 -1
  304. package/src/apis/AuthenticationApi.ts +140 -0
  305. package/src/apis/ContainerNetworksApi.ts +418 -0
  306. package/src/apis/ContainersApi.ts +19 -4
  307. package/src/apis/EventsApi.ts +82 -0
  308. package/src/apis/PermissionsApi.ts +59 -0
  309. package/src/apis/SecretsApi.ts +151 -0
  310. package/src/apis/VolumesApi.ts +133 -10
  311. package/src/apis/index.ts +2 -0
  312. package/src/models/BridgeNetwork.ts +127 -0
  313. package/src/models/BridgeNetworkAttachment.ts +90 -0
  314. package/src/models/BridgeNetworkDetails.ts +143 -0
  315. package/src/models/BridgeNetworkDriver.ts +53 -0
  316. package/src/models/ConnectBridgeNetworkRequest.ts +83 -0
  317. package/src/models/ContainerEvent.ts +137 -0
  318. package/src/models/ContainerEventKind.ts +55 -0
  319. package/src/models/ContainerHealthInfo.ts +91 -0
  320. package/src/models/ContainerInfo.ts +69 -0
  321. package/src/models/ContainerRestartKind.ts +55 -0
  322. package/src/models/ContainerRestartPolicy.ts +100 -0
  323. package/src/models/ContainerWaitResponse.ts +36 -2
  324. package/src/models/CreateBridgeNetworkRequest.ts +109 -0
  325. package/src/models/CreateContainerRequest.ts +125 -0
  326. package/src/models/CreateVolumeRequest.ts +92 -0
  327. package/src/models/DisconnectBridgeNetworkRequest.ts +74 -0
  328. package/src/models/HealthCheckRequest.ts +144 -0
  329. package/src/models/NetworkAttachmentInfo.ts +87 -0
  330. package/src/models/NetworkAttachmentRequest.ts +89 -0
  331. package/src/models/OidcCallbackResponse.ts +94 -0
  332. package/src/models/OidcProviderPublic.ts +76 -0
  333. package/src/models/PortMapping.ts +104 -0
  334. package/src/models/PortProtocol.ts +53 -0
  335. package/src/models/PullImageRequest.ts +29 -0
  336. package/src/models/RegistryAuth.ts +100 -0
  337. package/src/models/RegistryAuthType.ts +53 -0
  338. package/src/models/RevealAllSecretsResponse.ts +76 -0
  339. package/src/models/RotateSecretRequest.ts +66 -0
  340. package/src/models/RotateSecretResponse.ts +85 -0
  341. package/src/models/VolumeInfo.ts +114 -0
  342. package/src/models/VolumeMount.ts +28 -5
  343. package/src/models/VolumeMountType.ts +58 -0
  344. package/src/models/VolumeSummary.ts +7 -4
  345. package/src/models/index.ts +27 -0
package/docs/CronApi.md CHANGED
@@ -26,11 +26,11 @@ Disables a cron job, preventing it from running on schedule. The job can still b
26
26
  import {
27
27
  Configuration,
28
28
  CronApi,
29
- } from '@zlayer/client';
30
- import type { DisableCronJobRequest } from '@zlayer/client';
29
+ } from '@zlayer/api-client';
30
+ import type { DisableCronJobRequest } from '@zlayer/api-client';
31
31
 
32
32
  async function example() {
33
- console.log("🚀 Testing @zlayer/client SDK...");
33
+ console.log("🚀 Testing @zlayer/api-client SDK...");
34
34
  const config = new Configuration({
35
35
  // Configure HTTP bearer authorization: bearer_auth
36
36
  accessToken: "YOUR BEARER TOKEN",
@@ -99,11 +99,11 @@ Enables a disabled cron job, allowing it to run on schedule. # Errors Returns
99
99
  import {
100
100
  Configuration,
101
101
  CronApi,
102
- } from '@zlayer/client';
103
- import type { EnableCronJobRequest } from '@zlayer/client';
102
+ } from '@zlayer/api-client';
103
+ import type { EnableCronJobRequest } from '@zlayer/api-client';
104
104
 
105
105
  async function example() {
106
- console.log("🚀 Testing @zlayer/client SDK...");
106
+ console.log("🚀 Testing @zlayer/api-client SDK...");
107
107
  const config = new Configuration({
108
108
  // Configure HTTP bearer authorization: bearer_auth
109
109
  accessToken: "YOUR BEARER TOKEN",
@@ -172,11 +172,11 @@ Returns detailed information about a specific cron job. # Errors Returns an er
172
172
  import {
173
173
  Configuration,
174
174
  CronApi,
175
- } from '@zlayer/client';
176
- import type { GetCronJobRequest } from '@zlayer/client';
175
+ } from '@zlayer/api-client';
176
+ import type { GetCronJobRequest } from '@zlayer/api-client';
177
177
 
178
178
  async function example() {
179
- console.log("🚀 Testing @zlayer/client SDK...");
179
+ console.log("🚀 Testing @zlayer/api-client SDK...");
180
180
  const config = new Configuration({
181
181
  // Configure HTTP bearer authorization: bearer_auth
182
182
  accessToken: "YOUR BEARER TOKEN",
@@ -245,11 +245,11 @@ Returns a list of all registered cron jobs with their schedule information. # E
245
245
  import {
246
246
  Configuration,
247
247
  CronApi,
248
- } from '@zlayer/client';
249
- import type { ListCronJobsRequest } from '@zlayer/client';
248
+ } from '@zlayer/api-client';
249
+ import type { ListCronJobsRequest } from '@zlayer/api-client';
250
250
 
251
251
  async function example() {
252
- console.log("🚀 Testing @zlayer/client SDK...");
252
+ console.log("🚀 Testing @zlayer/api-client SDK...");
253
253
  const config = new Configuration({
254
254
  // Configure HTTP bearer authorization: bearer_auth
255
255
  accessToken: "YOUR BEARER TOKEN",
@@ -309,11 +309,11 @@ Triggers an immediate execution of the cron job, regardless of its schedule. #
309
309
  import {
310
310
  Configuration,
311
311
  CronApi,
312
- } from '@zlayer/client';
313
- import type { TriggerCronJobRequest } from '@zlayer/client';
312
+ } from '@zlayer/api-client';
313
+ import type { TriggerCronJobRequest } from '@zlayer/api-client';
314
314
 
315
315
  async function example() {
316
- console.log("🚀 Testing @zlayer/client SDK...");
316
+ console.log("🚀 Testing @zlayer/api-client SDK...");
317
317
  const config = new Configuration({
318
318
  // Configure HTTP bearer authorization: bearer_auth
319
319
  accessToken: "YOUR BEARER TOKEN",
@@ -16,7 +16,7 @@ Name | Type
16
16
  ## Example
17
17
 
18
18
  ```typescript
19
- import type { CronJobResponse } from '@zlayer/client'
19
+ import type { CronJobResponse } from '@zlayer/api-client'
20
20
 
21
21
  // TODO: Update the object below with actual values
22
22
  const example = {
@@ -14,7 +14,7 @@ Name | Type
14
14
  ## Example
15
15
 
16
16
  ```typescript
17
- import type { CronStatusResponse } from '@zlayer/client'
17
+ import type { CronStatusResponse } from '@zlayer/api-client'
18
18
 
19
19
  // TODO: Update the object below with actual values
20
20
  const example = {
@@ -11,7 +11,7 @@ Name | Type
11
11
  ## Example
12
12
 
13
13
  ```typescript
14
- import type { CsrfResponse } from '@zlayer/client'
14
+ import type { CsrfResponse } from '@zlayer/api-client'
15
15
 
16
16
  // TODO: Update the object below with actual values
17
17
  const example = {
@@ -17,7 +17,7 @@ Name | Type
17
17
  ## Example
18
18
 
19
19
  ```typescript
20
- import type { DeploymentDetails } from '@zlayer/client'
20
+ import type { DeploymentDetails } from '@zlayer/api-client'
21
21
 
22
22
  // TODO: Update the object below with actual values
23
23
  const example = {
@@ -15,7 +15,7 @@ Name | Type
15
15
  ## Example
16
16
 
17
17
  ```typescript
18
- import type { DeploymentSummary } from '@zlayer/client'
18
+ import type { DeploymentSummary } from '@zlayer/api-client'
19
19
 
20
20
  // TODO: Update the object below with actual values
21
21
  const example = {
@@ -25,11 +25,11 @@ When the daemon has orchestration wired (service manager, proxy, overlay), this
25
25
  import {
26
26
  Configuration,
27
27
  DeploymentsApi,
28
- } from '@zlayer/client';
29
- import type { CreateDeploymentOperationRequest } from '@zlayer/client';
28
+ } from '@zlayer/api-client';
29
+ import type { CreateDeploymentOperationRequest } from '@zlayer/api-client';
30
30
 
31
31
  async function example() {
32
- console.log("🚀 Testing @zlayer/client SDK...");
32
+ console.log("🚀 Testing @zlayer/api-client SDK...");
33
33
  const config = new Configuration({
34
34
  // Configure HTTP bearer authorization: bearer_auth
35
35
  accessToken: "YOUR BEARER TOKEN",
@@ -98,11 +98,11 @@ Delete a deployment.
98
98
  import {
99
99
  Configuration,
100
100
  DeploymentsApi,
101
- } from '@zlayer/client';
102
- import type { DeleteDeploymentRequest } from '@zlayer/client';
101
+ } from '@zlayer/api-client';
102
+ import type { DeleteDeploymentRequest } from '@zlayer/api-client';
103
103
 
104
104
  async function example() {
105
- console.log("🚀 Testing @zlayer/client SDK...");
105
+ console.log("🚀 Testing @zlayer/api-client SDK...");
106
106
  const config = new Configuration({
107
107
  // Configure HTTP bearer authorization: bearer_auth
108
108
  accessToken: "YOUR BEARER TOKEN",
@@ -171,11 +171,11 @@ Get deployment details (with live per-service health when available).
171
171
  import {
172
172
  Configuration,
173
173
  DeploymentsApi,
174
- } from '@zlayer/client';
175
- import type { GetDeploymentRequest } from '@zlayer/client';
174
+ } from '@zlayer/api-client';
175
+ import type { GetDeploymentRequest } from '@zlayer/api-client';
176
176
 
177
177
  async function example() {
178
- console.log("🚀 Testing @zlayer/client SDK...");
178
+ console.log("🚀 Testing @zlayer/api-client SDK...");
179
179
  const config = new Configuration({
180
180
  // Configure HTTP bearer authorization: bearer_auth
181
181
  accessToken: "YOUR BEARER TOKEN",
@@ -244,11 +244,11 @@ List all deployments.
244
244
  import {
245
245
  Configuration,
246
246
  DeploymentsApi,
247
- } from '@zlayer/client';
248
- import type { ListDeploymentsRequest } from '@zlayer/client';
247
+ } from '@zlayer/api-client';
248
+ import type { ListDeploymentsRequest } from '@zlayer/api-client';
249
249
 
250
250
  async function example() {
251
- console.log("🚀 Testing @zlayer/client SDK...");
251
+ console.log("🚀 Testing @zlayer/api-client SDK...");
252
252
  const config = new Configuration({
253
253
  // Configure HTTP bearer authorization: bearer_auth
254
254
  accessToken: "YOUR BEARER TOKEN",
@@ -0,0 +1,37 @@
1
+
2
+ # DisconnectBridgeNetworkRequest
3
+
4
+ Body for `POST /api/v1/container-networks/{id_or_name}/disconnect`.
5
+
6
+ ## Properties
7
+
8
+ Name | Type
9
+ ------------ | -------------
10
+ `containerId` | string
11
+ `force` | boolean
12
+
13
+ ## Example
14
+
15
+ ```typescript
16
+ import type { DisconnectBridgeNetworkRequest } from '@zlayer/api-client'
17
+
18
+ // TODO: Update the object below with actual values
19
+ const example = {
20
+ "containerId": null,
21
+ "force": null,
22
+ } satisfies DisconnectBridgeNetworkRequest
23
+
24
+ console.log(example)
25
+
26
+ // Convert the instance to a JSON string
27
+ const exampleJSON: string = JSON.stringify(example)
28
+ console.log(exampleJSON)
29
+
30
+ // Parse the JSON string back to an object
31
+ const exampleParsed = JSON.parse(exampleJSON) as DisconnectBridgeNetworkRequest
32
+ console.log(exampleParsed)
33
+ ```
34
+
35
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
36
+
37
+
@@ -17,7 +17,7 @@ Name | Type
17
17
  ## Example
18
18
 
19
19
  ```typescript
20
- import type { DnsStatusResponse } from '@zlayer/client'
20
+ import type { DnsStatusResponse } from '@zlayer/api-client'
21
21
 
22
22
  // TODO: Update the object below with actual values
23
23
  const example = {
@@ -26,11 +26,11 @@ Create a new environment. Admin only.
26
26
  import {
27
27
  Configuration,
28
28
  EnvironmentsApi,
29
- } from '@zlayer/client';
30
- import type { CreateEnvironmentOperationRequest } from '@zlayer/client';
29
+ } from '@zlayer/api-client';
30
+ import type { CreateEnvironmentOperationRequest } from '@zlayer/api-client';
31
31
 
32
32
  async function example() {
33
- console.log("🚀 Testing @zlayer/client SDK...");
33
+ console.log("🚀 Testing @zlayer/api-client SDK...");
34
34
  const config = new Configuration({
35
35
  // Configure HTTP bearer authorization: bearer_auth
36
36
  accessToken: "YOUR BEARER TOKEN",
@@ -100,11 +100,11 @@ Non-cascading: the operator must purge any secrets attached to the environment b
100
100
  import {
101
101
  Configuration,
102
102
  EnvironmentsApi,
103
- } from '@zlayer/client';
104
- import type { DeleteEnvironmentRequest } from '@zlayer/client';
103
+ } from '@zlayer/api-client';
104
+ import type { DeleteEnvironmentRequest } from '@zlayer/api-client';
105
105
 
106
106
  async function example() {
107
- console.log("🚀 Testing @zlayer/client SDK...");
107
+ console.log("🚀 Testing @zlayer/api-client SDK...");
108
108
  const config = new Configuration({
109
109
  // Configure HTTP bearer authorization: bearer_auth
110
110
  accessToken: "YOUR BEARER TOKEN",
@@ -174,11 +174,11 @@ Fetch a single environment by id.
174
174
  import {
175
175
  Configuration,
176
176
  EnvironmentsApi,
177
- } from '@zlayer/client';
178
- import type { GetEnvironmentRequest } from '@zlayer/client';
177
+ } from '@zlayer/api-client';
178
+ import type { GetEnvironmentRequest } from '@zlayer/api-client';
179
179
 
180
180
  async function example() {
181
- console.log("🚀 Testing @zlayer/client SDK...");
181
+ console.log("🚀 Testing @zlayer/api-client SDK...");
182
182
  const config = new Configuration({
183
183
  // Configure HTTP bearer authorization: bearer_auth
184
184
  accessToken: "YOUR BEARER TOKEN",
@@ -246,11 +246,11 @@ Filter rules (see [`ListEnvironmentsQuery`]): - `?project={
246
246
  import {
247
247
  Configuration,
248
248
  EnvironmentsApi,
249
- } from '@zlayer/client';
250
- import type { ListEnvironmentsRequest } from '@zlayer/client';
249
+ } from '@zlayer/api-client';
250
+ import type { ListEnvironmentsRequest } from '@zlayer/api-client';
251
251
 
252
252
  async function example() {
253
- console.log("🚀 Testing @zlayer/client SDK...");
253
+ console.log("🚀 Testing @zlayer/api-client SDK...");
254
254
  const config = new Configuration({
255
255
  // Configure HTTP bearer authorization: bearer_auth
256
256
  accessToken: "YOUR BEARER TOKEN",
@@ -318,11 +318,11 @@ Rename / re-describe an environment. Admin only.
318
318
  import {
319
319
  Configuration,
320
320
  EnvironmentsApi,
321
- } from '@zlayer/client';
322
- import type { UpdateEnvironmentOperationRequest } from '@zlayer/client';
321
+ } from '@zlayer/api-client';
322
+ import type { UpdateEnvironmentOperationRequest } from '@zlayer/api-client';
323
323
 
324
324
  async function example() {
325
- console.log("🚀 Testing @zlayer/client SDK...");
325
+ console.log("🚀 Testing @zlayer/api-client SDK...");
326
326
  const config = new Configuration({
327
327
  // Configure HTTP bearer authorization: bearer_auth
328
328
  accessToken: "YOUR BEARER TOKEN",
@@ -0,0 +1,85 @@
1
+ # EventsApi
2
+
3
+ All URIs are relative to *http://localhost*
4
+
5
+ | Method | HTTP request | Description |
6
+ |------------- | ------------- | -------------|
7
+ | [**streamEvents**](EventsApi.md#streamevents) | **GET** /api/v1/events | Stream container lifecycle events as Server-Sent Events. |
8
+
9
+
10
+
11
+ ## streamEvents
12
+
13
+ > streamEvents(follow, label)
14
+
15
+ Stream container lifecycle events as Server-Sent Events.
16
+
17
+ # Errors Returns `400` if a `label` query parameter is malformed, `401` if the caller is not authenticated.
18
+
19
+ ### Example
20
+
21
+ ```ts
22
+ import {
23
+ Configuration,
24
+ EventsApi,
25
+ } from '@zlayer/api-client';
26
+ import type { StreamEventsRequest } from '@zlayer/api-client';
27
+
28
+ async function example() {
29
+ console.log("🚀 Testing @zlayer/api-client SDK...");
30
+ const config = new Configuration({
31
+ // Configure HTTP bearer authorization: bearer_auth
32
+ accessToken: "YOUR BEARER TOKEN",
33
+ });
34
+ const api = new EventsApi(config);
35
+
36
+ const body = {
37
+ // boolean | Follow the event stream. Default: `true`. Reserved for parity with Docker-compat tooling; this endpoint is always streaming. (optional)
38
+ follow: true,
39
+ // Array<string> | Label filter in `k=v` form. Repeatable. An event passes only if all filters match (AND semantics). (optional)
40
+ label: ...,
41
+ } satisfies StreamEventsRequest;
42
+
43
+ try {
44
+ const data = await api.streamEvents(body);
45
+ console.log(data);
46
+ } catch (error) {
47
+ console.error(error);
48
+ }
49
+ }
50
+
51
+ // Run the test
52
+ example().catch(console.error);
53
+ ```
54
+
55
+ ### Parameters
56
+
57
+
58
+ | Name | Type | Description | Notes |
59
+ |------------- | ------------- | ------------- | -------------|
60
+ | **follow** | `boolean` | Follow the event stream. Default: &#x60;true&#x60;. Reserved for parity with Docker-compat tooling; this endpoint is always streaming. | [Optional] [Defaults to `undefined`] |
61
+ | **label** | `Array<string>` | Label filter in &#x60;k&#x3D;v&#x60; form. Repeatable. An event passes only if all filters match (AND semantics). | [Optional] |
62
+
63
+ ### Return type
64
+
65
+ `void` (Empty response body)
66
+
67
+ ### Authorization
68
+
69
+ [bearer_auth](../README.md#bearer_auth)
70
+
71
+ ### HTTP request headers
72
+
73
+ - **Content-Type**: Not defined
74
+ - **Accept**: Not defined
75
+
76
+
77
+ ### HTTP response details
78
+ | Status code | Description | Response headers |
79
+ |-------------|-------------|------------------|
80
+ | **200** | SSE stream of container lifecycle events | - |
81
+ | **400** | Invalid label filter | - |
82
+ | **401** | Unauthorized | - |
83
+
84
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
85
+
@@ -12,7 +12,7 @@ Name | Type
12
12
  ## Example
13
13
 
14
14
  ```typescript
15
- import type { ForceLeaderRequest } from '@zlayer/client'
15
+ import type { ForceLeaderRequest } from '@zlayer/api-client'
16
16
 
17
17
  // TODO: Update the object below with actual values
18
18
  const example = {
@@ -15,7 +15,7 @@ Name | Type
15
15
  ## Example
16
16
 
17
17
  ```typescript
18
- import type { ForceLeaderResponse } from '@zlayer/client'
18
+ import type { ForceLeaderResponse } from '@zlayer/api-client'
19
19
 
20
20
  // TODO: Update the object below with actual values
21
21
  const example = {
@@ -11,7 +11,7 @@ Name | Type
11
11
  ## Example
12
12
 
13
13
  ```typescript
14
- import type { GitCredentialKindSchema } from '@zlayer/client'
14
+ import type { GitCredentialKindSchema } from '@zlayer/api-client'
15
15
 
16
16
  // TODO: Update the object below with actual values
17
17
  const example = {
@@ -14,7 +14,7 @@ Name | Type
14
14
  ## Example
15
15
 
16
16
  ```typescript
17
- import type { GitCredentialResponse } from '@zlayer/client'
17
+ import type { GitCredentialResponse } from '@zlayer/api-client'
18
18
 
19
19
  // TODO: Update the object below with actual values
20
20
  const example = {
@@ -14,7 +14,7 @@ Name | Type
14
14
  ## Example
15
15
 
16
16
  ```typescript
17
- import type { GpuInfoSummary } from '@zlayer/client'
17
+ import type { GpuInfoSummary } from '@zlayer/api-client'
18
18
 
19
19
  // TODO: Update the object below with actual values
20
20
  const example = {
@@ -17,7 +17,7 @@ Name | Type
17
17
  ## Example
18
18
 
19
19
  ```typescript
20
- import type { GpuUtilizationReport } from '@zlayer/client'
20
+ import type { GpuUtilizationReport } from '@zlayer/api-client'
21
21
 
22
22
  // TODO: Update the object below with actual values
23
23
  const example = {
@@ -16,7 +16,7 @@ Name | Type
16
16
  ## Example
17
17
 
18
18
  ```typescript
19
- import type { GrantPermissionRequest } from '@zlayer/client'
19
+ import type { GrantPermissionRequest } from '@zlayer/api-client'
20
20
 
21
21
  // TODO: Update the object below with actual values
22
22
  const example = {
@@ -13,7 +13,7 @@ Name | Type
13
13
  ## Example
14
14
 
15
15
  ```typescript
16
- import type { GroupMembersResponse } from '@zlayer/client'
16
+ import type { GroupMembersResponse } from '@zlayer/api-client'
17
17
 
18
18
  // TODO: Update the object below with actual values
19
19
  const example = {
package/docs/GroupsApi.md CHANGED
@@ -28,11 +28,11 @@ Add a member to a group. Admin only.
28
28
  import {
29
29
  Configuration,
30
30
  GroupsApi,
31
- } from '@zlayer/client';
32
- import type { AddMemberOperationRequest } from '@zlayer/client';
31
+ } from '@zlayer/api-client';
32
+ import type { AddMemberOperationRequest } from '@zlayer/api-client';
33
33
 
34
34
  async function example() {
35
- console.log("🚀 Testing @zlayer/client SDK...");
35
+ console.log("🚀 Testing @zlayer/api-client SDK...");
36
36
  const api = new GroupsApi();
37
37
 
38
38
  const body = {
@@ -101,11 +101,11 @@ Create a new group. Admin only.
101
101
  import {
102
102
  Configuration,
103
103
  GroupsApi,
104
- } from '@zlayer/client';
105
- import type { CreateGroupOperationRequest } from '@zlayer/client';
104
+ } from '@zlayer/api-client';
105
+ import type { CreateGroupOperationRequest } from '@zlayer/api-client';
106
106
 
107
107
  async function example() {
108
- console.log("🚀 Testing @zlayer/client SDK...");
108
+ console.log("🚀 Testing @zlayer/api-client SDK...");
109
109
  const api = new GroupsApi();
110
110
 
111
111
  const body = {
@@ -170,11 +170,11 @@ Delete a group. Admin only.
170
170
  import {
171
171
  Configuration,
172
172
  GroupsApi,
173
- } from '@zlayer/client';
174
- import type { DeleteGroupRequest } from '@zlayer/client';
173
+ } from '@zlayer/api-client';
174
+ import type { DeleteGroupRequest } from '@zlayer/api-client';
175
175
 
176
176
  async function example() {
177
- console.log("🚀 Testing @zlayer/client SDK...");
177
+ console.log("🚀 Testing @zlayer/api-client SDK...");
178
178
  const api = new GroupsApi();
179
179
 
180
180
  const body = {
@@ -239,11 +239,11 @@ Fetch a single group by id.
239
239
  import {
240
240
  Configuration,
241
241
  GroupsApi,
242
- } from '@zlayer/client';
243
- import type { GetGroupRequest } from '@zlayer/client';
242
+ } from '@zlayer/api-client';
243
+ import type { GetGroupRequest } from '@zlayer/api-client';
244
244
 
245
245
  async function example() {
246
- console.log("🚀 Testing @zlayer/client SDK...");
246
+ console.log("🚀 Testing @zlayer/api-client SDK...");
247
247
  const api = new GroupsApi();
248
248
 
249
249
  const body = {
@@ -307,11 +307,11 @@ List all groups.
307
307
  import {
308
308
  Configuration,
309
309
  GroupsApi,
310
- } from '@zlayer/client';
311
- import type { ListGroupsRequest } from '@zlayer/client';
310
+ } from '@zlayer/api-client';
311
+ import type { ListGroupsRequest } from '@zlayer/api-client';
312
312
 
313
313
  async function example() {
314
- console.log("🚀 Testing @zlayer/client SDK...");
314
+ console.log("🚀 Testing @zlayer/api-client SDK...");
315
315
  const api = new GroupsApi();
316
316
 
317
317
  try {
@@ -366,11 +366,11 @@ Remove a member from a group. Admin only.
366
366
  import {
367
367
  Configuration,
368
368
  GroupsApi,
369
- } from '@zlayer/client';
370
- import type { RemoveMemberRequest } from '@zlayer/client';
369
+ } from '@zlayer/api-client';
370
+ import type { RemoveMemberRequest } from '@zlayer/api-client';
371
371
 
372
372
  async function example() {
373
- console.log("🚀 Testing @zlayer/client SDK...");
373
+ console.log("🚀 Testing @zlayer/api-client SDK...");
374
374
  const api = new GroupsApi();
375
375
 
376
376
  const body = {
@@ -438,11 +438,11 @@ Update a group\&#39;s name and/or description. Admin only.
438
438
  import {
439
439
  Configuration,
440
440
  GroupsApi,
441
- } from '@zlayer/client';
442
- import type { UpdateGroupOperationRequest } from '@zlayer/client';
441
+ } from '@zlayer/api-client';
442
+ import type { UpdateGroupOperationRequest } from '@zlayer/api-client';
443
443
 
444
444
  async function example() {
445
- console.log("🚀 Testing @zlayer/client SDK...");
445
+ console.log("🚀 Testing @zlayer/api-client SDK...");
446
446
  const api = new GroupsApi();
447
447
 
448
448
  const body = {
package/docs/HealthApi.md CHANGED
@@ -21,11 +21,11 @@ Liveness probe - basic health check
21
21
  import {
22
22
  Configuration,
23
23
  HealthApi,
24
- } from '@zlayer/client';
25
- import type { LivenessRequest } from '@zlayer/client';
24
+ } from '@zlayer/api-client';
25
+ import type { LivenessRequest } from '@zlayer/api-client';
26
26
 
27
27
  async function example() {
28
- console.log("🚀 Testing @zlayer/client SDK...");
28
+ console.log("🚀 Testing @zlayer/api-client SDK...");
29
29
  const api = new HealthApi();
30
30
 
31
31
  try {
@@ -78,11 +78,11 @@ Readiness probe - full health check
78
78
  import {
79
79
  Configuration,
80
80
  HealthApi,
81
- } from '@zlayer/client';
82
- import type { ReadinessRequest } from '@zlayer/client';
81
+ } from '@zlayer/api-client';
82
+ import type { ReadinessRequest } from '@zlayer/api-client';
83
83
 
84
84
  async function example() {
85
- console.log("🚀 Testing @zlayer/client SDK...");
85
+ console.log("🚀 Testing @zlayer/api-client SDK...");
86
86
  const api = new HealthApi();
87
87
 
88
88
  try {
@@ -0,0 +1,51 @@
1
+
2
+ # HealthCheckRequest
3
+
4
+ Container health check request. Mirrors the on-disk `HealthCheck` enum (see `zlayer_spec::HealthCheck`) as a discriminated union keyed on `type`. Translated to `zlayer_spec::HealthSpec` by `HealthCheckRequest::to_health_spec`. Durations are humantime strings (for example `\"10s\"`, `\"500ms\"`, `\"1m\"`). ## Variants - `type: \"tcp\"` — requires `port` (1-65535). - `type: \"http\"` — requires `url`; `expect_status` defaults to 200. - `type: \"command\"` — requires `command` (array of argv tokens; joined with spaces and passed to `sh -c` by the health monitor, matching the existing compose-to-ZLayer conversion in `zlayer-docker`).
5
+
6
+ ## Properties
7
+
8
+ Name | Type
9
+ ------------ | -------------
10
+ `command` | Array&lt;string&gt;
11
+ `expectStatus` | number
12
+ `interval` | string
13
+ `port` | number
14
+ `retries` | number
15
+ `startPeriod` | string
16
+ `timeout` | string
17
+ `type` | string
18
+ `url` | string
19
+
20
+ ## Example
21
+
22
+ ```typescript
23
+ import type { HealthCheckRequest } from '@zlayer/api-client'
24
+
25
+ // TODO: Update the object below with actual values
26
+ const example = {
27
+ "command": null,
28
+ "expectStatus": null,
29
+ "interval": null,
30
+ "port": null,
31
+ "retries": null,
32
+ "startPeriod": null,
33
+ "timeout": null,
34
+ "type": null,
35
+ "url": null,
36
+ } satisfies HealthCheckRequest
37
+
38
+ console.log(example)
39
+
40
+ // Convert the instance to a JSON string
41
+ const exampleJSON: string = JSON.stringify(example)
42
+ console.log(exampleJSON)
43
+
44
+ // Parse the JSON string back to an object
45
+ const exampleParsed = JSON.parse(exampleJSON) as HealthCheckRequest
46
+ console.log(exampleParsed)
47
+ ```
48
+
49
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
50
+
51
+
@@ -15,7 +15,7 @@ Name | Type
15
15
  ## Example
16
16
 
17
17
  ```typescript
18
- import type { HealthResponse } from '@zlayer/client'
18
+ import type { HealthResponse } from '@zlayer/api-client'
19
19
 
20
20
  // TODO: Update the object below with actual values
21
21
  const example = {