{"info":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","description":"<html><head></head><body><blockquote>\n<p><strong>Note:</strong> A more up-to-date V2 documentation is available at <a href=\"https://api-v2-developers.xelon.ch/\">https://api-v2-developers.xelon.ch/</a>.</p>\n</blockquote>\n<h2 id=\"overview\">Overview</h2>\n<p>The Xelon HQ API is a RESTful interface that provides predictable URLs for accessing resources and retrieving HTTP responses. Our API accepts JSON-formatted content for both requests and responses, including errors.</p>\n<p>Each request must be authenticated and should not exceed the <a href=\"https://www.xelon.ch/docs/errors-formats-and-limits\">rate limit</a>. Learn more about our API fundamentals <a href=\"https://www.xelon.ch/docs/xelon-api-101\">here</a>.</p>\n<blockquote>\n<p>Please note that folders and endpoints marked with a [-] prefix may not work correctly. We're doing our best to fix that asap. </p>\n</blockquote>\n<h2 id=\"base-url\">Base URL</h2>\n<p>Base URL of all API requests is <code>https://hq.xelon.ch</code>.</p>\n<h2 id=\"authorization\">Authorization</h2>\n<p>Within Xelon HQ API, to make authorized calls, you must provide an authorization header with the Bearer token, which stands for Service Token within the platform. You can learn how to obtain it <a href=\"https://www.xelon.ch/docs/xelon-api-101#authorize-youself\">here</a>.</p>\n<h2 id=\"key-id-parameters\">Key ID parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Where to find</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cloudId</code></td>\n<td>An ID of a specific Cloud.</td>\n<td>You can use our public clouds: Public Cloud CH Rümlang – <code>1</code>, or Public Cloud CH Lupfig – <code>6</code>.</td>\n</tr>\n<tr>\n<td><code>tenant_id</code></td>\n<td>An ID of a specific organization. (Sometimes referred to as TENANT ID / TENANT_ID)</td>\n<td><strong>Organization</strong> <strong>&gt;</strong> <code>GET</code> <strong>List of all organizations</strong> <strong>&gt;</strong> <code>id</code>.</td>\n</tr>\n<tr>\n<td><code>localvmid</code></td>\n<td>An ID of a specific device, often referred to as in endpoint URLs.</td>\n<td><strong>Devices and Servers &gt; Device and Server Actions &gt;</strong> <strong><code>GET</code></strong> <strong>Get list of devices</strong> &gt; <code>localvmid</code>.</td>\n</tr>\n<tr>\n<td><code>networkId</code></td>\n<td>An ID of a specific network, either shared, LAN, or WAN.</td>\n<td><strong>WAN, LAN, and Shared Networks &gt;</strong> <strong><code>GET</code></strong> <strong>Get list of networks &gt;</strong> <strong><code>id</code></strong>.</td>\n</tr>\n<tr>\n<td><code>kubernetes_id</code></td>\n<td>An ID of a specific K8s Cluster.</td>\n<td><strong>Kubernetes Clusters &gt;</strong> <strong><code>GET</code></strong> <strong>List of all Clusters &gt;</strong> <code>id</code><strong>.</strong></td>\n</tr>\n<tr>\n<td><code>hv_system_id</code></td>\n<td>ID of a specific Cloud.</td>\n<td></td>\n</tr>\n<tr>\n<td><code>hv_type</code></td>\n<td>Type of your Cloud. Can be either <code>private</code> or <code>public</code>.</td>\n<td>See <code>GET</code>  <br><strong>List of organization's clouds</strong> for more info.</td>\n</tr>\n<tr>\n<td><code>diskvalue</code></td>\n<td>Disk size number in gigabytes. 1GB to 2048GB for SSD. 50GB to 2048GB for HDD</td>\n<td></td>\n</tr>\n<tr>\n<td><code>backupId</code></td>\n<td>A backup frequency value that corresponds to a specific period. Learn more in <a href=\"https://documenter.getpostman.com/view/19092098/UVeMGNTf#314444df-8c3a-4a5a-9ed6-820f3fa2b72f\">Backups</a> folder.</td>\n<td><strong>Backups</strong> folder description.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"permissions\">Permissions</h2>\n<p>Xelon HQ permissions array consists of three parameters:</p>\n<ul>\n<li><p><code>id</code> – a unique ID of a permission.</p>\n</li>\n<li><p><strong>Technical name</strong> – a more jargon name of a permission (<code>name</code>).</p>\n</li>\n<li><p><strong>General name</strong> – a more plain and clear name of a permission (<code>label</code>).</p>\n</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>id</code></th>\n<th><code>name</code></th>\n<th><code>label</code></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>1</td>\n<td>allow_manage_disaster_recovery</td>\n<td>Allow disaster recovery management</td>\n</tr>\n<tr>\n<td>2</td>\n<td>allow_manage_web_application_firewall</td>\n<td>Allow manage web application firewall</td>\n</tr>\n<tr>\n<td>3</td>\n<td>allow_view_virtual_machines</td>\n<td>Allow view virtual machines</td>\n</tr>\n<tr>\n<td>4</td>\n<td>allow_create_virtual_machine</td>\n<td>Allow create virtual machine</td>\n</tr>\n<tr>\n<td>5</td>\n<td>allow_view_virtual_machine</td>\n<td>Allow view virtual machine</td>\n</tr>\n<tr>\n<td>6</td>\n<td>allow_view_virtual_machine_reports</td>\n<td>Allow view virtual machine reports</td>\n</tr>\n<tr>\n<td>7</td>\n<td>allow_manage_virtual_machine_status</td>\n<td>Allow manage virtual machine status</td>\n</tr>\n<tr>\n<td>8</td>\n<td>allow_delete_virtual_machine</td>\n<td>Allow delete virtual machine</td>\n</tr>\n<tr>\n<td>9</td>\n<td>allow_manage_virtual_machine_backups</td>\n<td>Allow manage virtual machine backups</td>\n</tr>\n<tr>\n<td>10</td>\n<td>allow_manage_virtual_machine_resources</td>\n<td>Allow manage virtual machine resources</td>\n</tr>\n<tr>\n<td>11</td>\n<td>allow_manage_virtual_machine_snapshots</td>\n<td>Allow manage virtual machine snapshots</td>\n</tr>\n<tr>\n<td>12</td>\n<td>allow_manage_virtual_machine_scripts</td>\n<td>Allow manage virtual machine scripts</td>\n</tr>\n<tr>\n<td>13</td>\n<td>allow_manage_virtual_machine_monitoring</td>\n<td>Allow manage virtual machine monitoring</td>\n</tr>\n<tr>\n<td>14</td>\n<td>allow_manage_virtual_machine_info</td>\n<td>Allow manage virtual machine info</td>\n</tr>\n<tr>\n<td>15</td>\n<td>allow_view_networking</td>\n<td>Allow view networking</td>\n</tr>\n<tr>\n<td>16</td>\n<td>allow_view_network</td>\n<td>Allow view network</td>\n</tr>\n<tr>\n<td>17</td>\n<td>allow_create_network</td>\n<td>Allow create network</td>\n</tr>\n<tr>\n<td>18</td>\n<td>allow_manage_network</td>\n<td>Allow manage network</td>\n</tr>\n<tr>\n<td>19</td>\n<td>allow_view_templates</td>\n<td>Allow view templates</td>\n</tr>\n<tr>\n<td>20</td>\n<td>allow_manage_templates</td>\n<td>Allow manage templates</td>\n</tr>\n<tr>\n<td>21</td>\n<td>allow_create_templates</td>\n<td>Allow create templates</td>\n</tr>\n<tr>\n<td>22</td>\n<td>allow_view_organizations</td>\n<td>Allow view organizations</td>\n</tr>\n<tr>\n<td>23</td>\n<td>allow_create_organizations</td>\n<td>Allow create organizations</td>\n</tr>\n<tr>\n<td>24</td>\n<td>allow_manage_service_tokens</td>\n<td>Allow manage service tokens</td>\n</tr>\n<tr>\n<td>25</td>\n<td>allow_create_users</td>\n<td>Allow create users</td>\n</tr>\n<tr>\n<td>26</td>\n<td>allow_delete_users</td>\n<td>Allow delete users</td>\n</tr>\n<tr>\n<td>27</td>\n<td>allow_manage_users</td>\n<td>Allow manage users</td>\n</tr>\n<tr>\n<td>28</td>\n<td>allow_manage_users_permissions</td>\n<td>Allow manage users permissions</td>\n</tr>\n<tr>\n<td>29</td>\n<td>allow_delete_organizations</td>\n<td>Allow delete organizations</td>\n</tr>\n<tr>\n<td>30</td>\n<td>allow_disable_organizations</td>\n<td>Allow disable organizations</td>\n</tr>\n<tr>\n<td>31</td>\n<td>allow_view_organization_invoices</td>\n<td>Allow view organization invoices</td>\n</tr>\n<tr>\n<td>32</td>\n<td>allow_view_invoice_details</td>\n<td>Allow view invoice details</td>\n</tr>\n<tr>\n<td>33</td>\n<td>allow_view_credits_info</td>\n<td>Allow view credits info</td>\n</tr>\n<tr>\n<td>34</td>\n<td>allow_manage_payment_methods</td>\n<td>Allow manage payment methods</td>\n</tr>\n<tr>\n<td>35</td>\n<td>allow_view_usage_overview</td>\n<td>Allow get usage overview</td>\n</tr>\n<tr>\n<td>36</td>\n<td>allow_view_usage_reports</td>\n<td>Allow view usage reports</td>\n</tr>\n<tr>\n<td>37</td>\n<td>allow_view_organization_reports</td>\n<td>Allow view organization reports</td>\n</tr>\n<tr>\n<td>213</td>\n<td>allow_manage_virtual_machine_replications</td>\n<td>Allows to see and operate VM Replication functionality</td>\n</tr>\n<tr>\n<td></td>\n<td>allow_create_stretched_network</td>\n<td>Allows users to create and manage Stretched networks.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"rate-limits\">Rate limits</h3>\n<p>500 API calls per minute for <code>POST</code> requests. Need extension? Contact our support, we're happy to help!</p>\n<h3 id=\"formatting\">Formatting</h3>\n<p>All date entries should follow the <a href=\"https://www.iso.org/iso-8601-date-and-time-format.html\">ISO8601</a> format: <code>YYYY-MM-DD.</code></p>\n<ul>\n<li>Example: <code>\"startDate\": \"2022-12-24\"</code></li>\n</ul>\n<h2 id=\"changelog\">Changelog</h2>\n<p>2025-11-25</p>\n<ul>\n<li>Added whole new <a href=\"https://developers.xelon.ch/#8099e980-de43-4f98-825b-fe38e4862068\">S3 Object Storage</a> section</li>\n</ul>\n<p>2025-10-06</p>\n<ul>\n<li><p><strong>Removed</strong>: <code>monitoring</code> property deprecated across VM endpoints:</p>\n<ul>\n<li><p><code>GET /api/service/device</code> response no longer includes <code>monitoring</code> under <code>device.localvmdetails</code></p>\n</li>\n<li><p><code>POST /api/service/vmlist/create</code> request body no longer accepts <code>monitoring</code> parameter</p>\n</li>\n<li><p><code>POST /api/service/vmlist/create</code> response no longer includes <code>monitoring</code> under <code>device</code> object</p>\n</li>\n</ul>\n</li>\n</ul>\n<p>2025-03-27</p>\n<ul>\n<li>The <strong><code>GET</code></strong> <strong>/api/service/device</strong> endpoint now includes a <code>labels</code> array.</li>\n</ul>\n<p>2025-02-20</p>\n<ul>\n<li><p>For <code>tenants/{tenantIdentifier}/networksToShare</code>, added new optional parameter <code>owner_tenant_id</code></p>\n</li>\n<li><p>The <code>GET /user/device</code> now includes a new boolean property <code>isConnected</code> under each network listed in the device.networks array.</p>\n</li>\n<li><p>Endpoint for deleting a script has changed:</p>\n<ul>\n<li><p>Old: <code>DELETE /{tenantIdentifier}/templates/deletescript</code></p>\n</li>\n<li><p>New: <code>DELETE /{tenantIdentifier}/scripts/{scriptId}</code></p>\n</li>\n</ul>\n</li>\n</ul>\n<p>2024-12-05</p>\n<ul>\n<li><p>GET /service/device now returns a new property under the <code>device</code> array:</p>\n<ul>\n<li><code>cpuCoresPerSocket</code> (integer)</li>\n</ul>\n</li>\n</ul>\n<p>2024-09-28</p>\n<ul>\n<li><p>The <code>GET /services/device</code> now includes the following new boolean properties in the request:</p>\n<ul>\n<li><p><code>cpuHotAdd</code></p>\n</li>\n<li><p><code>cpuHotRemove</code></p>\n</li>\n<li><p><code>ramHotAdd</code></p>\n<ul>\n<li>These indicate support for hot-adding or removing CPU and RAM on the VM.</li>\n</ul>\n</li>\n</ul>\n</li>\n<li><p>The <code>PUT /service/{tenantIdentifier}/vmlist/{vmId}/update/{networkId}/{unit}</code> now supports two new boolean properties in the request body:</p>\n</li>\n<li><p><code>connectOnPowerOn</code></p>\n</li>\n<li><p><code>isConnected</code></p>\n</li>\n<li><p>For the <strong>Create LAN network and Create WAN network endpoints</strong> added new integer type property called <code>\"networkSpeed\"</code></p>\n</li>\n<li><p><code>/user/vmlist/create</code> request payload has two new boolean fields: <code>connectOnPowerOn</code> (connect VM to network on power-on) and <code>hostnameVM</code> name.</p>\n</li>\n<li><p>The <code>GET /service/{tenantIdentifier}/vmlist/{vmId}/editserver</code> response now includes two new boolean properties under each <code>networkInterface.network</code> object:</p>\n<ul>\n<li><p><code>isConnected</code></p>\n</li>\n<li><p><code>startConnected</code></p>\n</li>\n</ul>\n</li>\n</ul>\n<p>2024-09-03</p>\n<ul>\n<li><p>For <code>api/service/{tenantIdentifier}/networks/{networkId}/show</code> endpoint, added optional response property <code>hvSystemId</code></p>\n</li>\n<li><p>For the <strong>Get firewall info</strong> endpoint, added a new string type property called <code>\"state\"</code> that can be either <code>\"ready\"</code> or <code>\"provisioning\"</code>.</p>\n</li>\n</ul>\n<p>2024-06-17</p>\n<ul>\n<li><p><code>/service/{tenantIdentifier}/users/restore</code> now requires an <code>allow_delete_users</code> permission</p>\n</li>\n<li><p>Added new <code>/tenants/{tenantIdentifier}/children-with-parent</code> and <code>/tenants/{tenantIdentifier}/users/permissions</code> endpoints.</p>\n</li>\n<li><p><code>/service/tenants/{tenantIdentifier}/users/roles</code>endpoint is split into 3 separate endpoints: <code>/roles</code>, <code>/children-with-parent</code>, and <code>/permissions</code></p>\n</li>\n</ul>\n<p>2023-12-9</p>\n<ul>\n<li><code>GET</code> List of subtenants endpoint can now retrieve deleted subtenants as well. To see them, add the <code>?isDeleted=true</code> query to the request.</li>\n</ul>\n<p>2023-08-6</p>\n<ul>\n<li><p>We’re streamlining the <strong>Get list of networks</strong> endpoint by removing the <code>stretched_network</code> parameter.</p>\n<ul>\n<li><p>Renamed the <code>hv_system</code> array to <code>hv_systems</code>.</p>\n</li>\n<li><p>In instances where a network is stretched and connected to multiple clouds, now the list of clouds goes in a numbered array called <code>hv_systems</code>.</p>\n</li>\n</ul>\n</li>\n<li><p>We’ve also introduced improved security with Client ID: To ensure the utmost security and authenticity of your requests, we highly recommend including the Client ID in the header of your API requests.<br>  - Simply go to My Organization &gt; Service Tokens block &gt; Client ID button. For all your API requests, please remember to include the following header: <code>X-User-Id:</code> .</p>\n</li>\n<li><p>Bonus: we added more flexibility for Service Tokens. From now on, one IP address can have multiple Service Tokens associated with it. This enhancement offers greater flexibility and control over token management. Additionally, we now support IPv4/IPv6 ranges in pattern format (e.g., 192.168..) and CIDR/subnet format (e.g., 192.168.0.0/16), giving you more options to work with.</p>\n</li>\n</ul>\n<p>2022-09-1</p>\n<ul>\n<li><p>Within the <code>POST</code> <strong>Usage report [Tenant view]</strong>, the <code>total</code> parameter now represents the total resource hours.</p>\n</li>\n<li><p>The <code>GET</code> <strong>Get list of devices</strong> endpoint response now has the following parameters removed:</p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>updated_at\ndeleted_at\niso_mounted\nserviceuser_status\nserviceuser_lastchecked\nuser_id\nservice_id\nmonitoring\nnotes\nservice_cluster_type\n\n</code></pre><p>2022-07-11</p>\n<ul>\n<li>Due to the multiple finance emails functionality, the <code>financeemail</code> parameter is now an array. Example: <code>\"financeemail\": [\"address1@xelon.ch\",\"address2@xelon.ch\"]</code></li>\n</ul>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"19092098","collectionId":"710347c3-a519-4b3c-905b-23a68604083e","publishedId":"UVeMGNTf","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"007bff"},"publishDate":"2022-05-20T10:07:10.000Z"},"item":[{"name":"Organizations","item":[{"name":"Options","item":[{"name":"Update organization fields","id":"37d323c6-c3e5-4edd-b7f6-3484c20b7505","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"X-Auth-Token","value":"X-User-ID","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"2factor\",\n    \"value\": 1\n}"},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/updatefield","description":"<p>Use this endpoint to update organiation's fields by entering them in the request body. Common use cases are:</p>\n<p><strong>Toggle 2FA</strong></p>\n<p>manage 2-factor authentication (2FA) for all users within your organization.</p>\n<ul>\n<li>Set <code>value</code> to <code>1</code> to enable and <code>0</code> to disable the 2FA.</li>\n<li>A <code>pk</code> parameter should equal your <code>tenant_id</code>.</li>\n</ul>\n<p><strong>Change organization type</strong></p>\n<p>Set <code>type</code> parameter (string) to <code>1</code> for Reseller, and <code>2</code> for End customer organization type.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","updatefield"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"32bb9305-2904-4096-a4f9-a60b47f9ee02","name":"Update organization fields","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"2factor\",\n\t\"pk\": \"<TENANT_ID>\",\n\t\"value\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/updatefield"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:33:26 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=S0kluSG8SgX8IYMsnq2lqgNqe95S6c5sulXZOnnPGZxrnTiLFYPK06dAH1mKduSAeqhTYiEXumENCty%2BtoMUpWRFr4NQhCA1g6%2FWjp%2BEX2cWVdqrfyr7JPjgJRGABg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed721597f9ffcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"tenant\": {\n        \"tenant_identifier\": \"<TENANT_ID>\",\n        \"created_at\": \"2018-02-22T12:45:00+01:00\",\n        \"tenantname\": \"Organization Name\",\n        \"address\": \"<ADDRESS>\",\n        \"address2\": \"<ADDRESS_2>\",\n        \"supportemail\": \"<EMAIL>\",\n        \"financeemail\": [\n            \"address1@xelon.ch\",\n            \"address2@xelon.ch\"\n        ],\n        \"phone\": \"<PHONE>\",\n        \"city\": \"<CITY>\",\n        \"postcode\": \"<POSTCODE>\",\n        \"country\": \"<COUNTRY>\",\n        \"vat\": null,\n        \"type\": 1,\n        \"active\": true,\n        \"status\": 1,\n        \"otp_type\": 1,\n        \"billingplan\": 1,\n        \"billing_frequency\": \"monthly\",\n        \"report_frequency\": \"bi-weekly\",\n        \"allow_bank_transfer\": false,\n        \"allow_trial_creation\": false,\n        \"deleted_at\": \"2026-01-01T12:00:00+01:00\",\n        \"demo\": false,\n        \"fixed_recurring\": 1,\n        \"fraud_risk_score\": 1,\n        \"invoice_type\": \"<INVOICE_TYPE>\",\n        \"minimum_recurring\": 1,\n        \"paid\": 1,\n        \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n        \"tax_id\": 1,\n        \"taxed\": 1,\n        \"trial\": false,\n        \"trial_end\": \"<TRIAL_END>\",\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"upgrade_modal_active\": 1,\n        \"withhold_invoices\": 1,\n        \"account_manager\": null,\n        \"credits_code_id\": null,\n        \"currency_id\": null,\n        \"customer_id\": null,\n        \"customer_type\": null,\n        \"deactivation_date\": null,\n        \"demo_end\": null,\n        \"demo_start\": null,\n        \"discount\": null,\n        \"hs_object_id\": null,\n        \"requested\": null,\n        \"resource_pool\": null,\n        \"trial_start\": null\n    },\n    \"message\": \"2FA method has been successfully updated.\",\n    \"customer_support_email\": \"<EMAIL>\",\n    \"error\": \"<ERROR>\"\n}"}],"_postman_id":"37d323c6-c3e5-4edd-b7f6-3484c20b7505"},{"name":"Auto reporting email frequency","id":"a921d079-50c8-42b9-b2be-d80666393f2a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"name\": \"report_frequency\",\n\t\"value\": \"bi-weekly\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/updatefield","description":"<p>This endpoint allows you to change the email frequency of the auto reporting service within your organization.</p>\n<p>The <code>value</code> parameter can be either <code>null</code>, <code>weekly</code>, <code>bi-weekly</code>, or <code>monthly</code>.</p>\n<p><strong>To toggle auto reporting off, please set the</strong> <strong><code>value</code></strong> <strong>to</strong> <strong><code>null</code></strong>.</p>\n<blockquote>\n<p>You can access this option from your Device's page, by going to <strong>Options &gt; Edit &gt; Email frequency</strong> block.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","updatefield"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"4ecf140b-0a41-4198-9726-9085384a7fe0","name":"Auto reporting email frequency","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"name\": \"report_frequency\",\n\t\"value\": \"bi-weekly\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/updatefield"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:34:00 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=4TPh8Fukc6CzcydfeDhEytBZthukXLSCKIVeSNDohdnP6hUA%2F1%2F7GgHb0J9%2B62cGkxgYBDDD8gBlqOGu33gNCGz3JiAsJQzsMR7NjKbm7oqvK1BESJFUzMSozly8jA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed72230cfdcfcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"tenant\": {\n        \"tenant_identifier\": \"<TENANT_ID>\",\n        \"created_at\": \"2018-02-22T12:45:00+01:00\",\n        \"tenantname\": \"Organization Name\",\n        \"address\": \"<ADDRESS>\",\n        \"address2\": \"<ADDRESS_2>\",\n        \"supportemail\": \"<EMAIL>\",\n        \"financeemail\": [\n            \"<EMAIL1>\",\n            \"<EMAIL2>\"\n        ],\n        \"phone\": \"<PHONE_NUMBER>\",\n        \"city\": \"<CITY>\",\n        \"postcode\": \"<POSTCODE>\",\n        \"country\": \"<COUNTRY>\",\n        \"vat\": null,\n        \"type\": 1,\n        \"active\": true,\n        \"status\": 1,\n        \"otp_type\": 1,\n        \"billingplan\": 1,\n        \"invoice_type\": \"per_service\",\n        \"billing_frequency\": \"monthly\",\n        \"report_frequency\": \"bi-weekly\",\n        \"withhold_invoices\": 1,\n        \"allow_bank_transfer\": false,\n        \"allow_trial_creation\": false,\n        \"deleted_at\": \"2026-01-01T12:00:00+01:00\",\n        \"demo\": false,\n        \"fixed_recurring\": 1,\n        \"fraud_risk_score\": 1,\n        \"minimum_recurring\": 1,\n        \"paid\": 1,\n        \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n        \"tax_id\": 1,\n        \"taxed\": 1,\n        \"trial\": false,\n        \"trial_end\": \"<TRIAL_END>\",\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"upgrade_modal_active\": 1,\n        \"account_manager\": null,\n        \"credits_code_id\": null,\n        \"currency_id\": null,\n        \"customer_id\": null,\n        \"customer_type\": null,\n        \"deactivation_date\": null,\n        \"demo_end\": null,\n        \"demo_start\": null,\n        \"discount\": null,\n        \"hs_object_id\": null,\n        \"requested\": null,\n        \"resource_pool\": null,\n        \"trial_start\": null\n    },\n    \"message\": \"Report frequency has been successfully updated.\",\n    \"customer_support_email\": \"<EMAIL>\",\n    \"error\": \"<ERROR>\"\n}"}],"_postman_id":"a921d079-50c8-42b9-b2be-d80666393f2a"},{"name":"Auto Reporting Recipients","id":"aef1e0e2-8a6f-4dff-8de2-af85767a3527","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"userIds\": [\n\t\t1696,\n\t\t1697\n\t]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenant/reports/<TENANT_ID>","description":"<p>This endpoint allows you to manage the list of recipients for Auto Reporting. Within the request body <code>userIds</code> array, insert or remove a user's <code>id</code> to add or remove them from the recipient list.</p>\n<blockquote>\n<p>User's IDs should be <strong>integer</strong> values, not string ones.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenant","reports","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e072706f-41c7-4605-aeac-792e9f8bc7e3","name":"Auto Reporting Recipients","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"userIds\": [\n\t\t1696,\n\t\t1697\n\t]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenant/reports/<TENANT_ID>","description":"This endpoint allows you to manage the list of recipients for Auto Reporting. Within the request body `userIds` array, insert or remove a user's `id` to add or remove them from the recipient list.\n\n> User's IDs should be **integer** values, not string ones."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Auto reporting settings have been successfully changed.\"\n}"}],"_postman_id":"aef1e0e2-8a6f-4dff-8de2-af85767a3527"}],"id":"7d50fb07-b810-4f4f-839d-79d44a202ca2","_postman_id":"7d50fb07-b810-4f4f-839d-79d44a202ca2","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}}},{"name":"List of all organizations","event":[{"listen":"test","script":{"id":"998d613e-5f76-4201-a53f-8a2cd43f4475","exec":[""],"type":"text/javascript"}}],"id":"8a9b3c32-3c27-440d-914c-4d59bdd92ebf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":false},"method":"GET","header":[{"key":"X-User-Id","value":"{{CLIENT_ID}}","type":"text"}],"url":"https://vdc.xelon.ch/api/service/tenants?parent=75c7cf02b782&with_deleted=true&with_trashed=true","description":"<p>This endpoint retrieves an array of all organizations and sub-organizations, available for you.</p>\n<p>Apply the <code>parent</code> query parameter to view all child tenants for resellers.</p>\n<h3 id=\"response-parameters\">Response parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>type</code></td>\n<td>Can be either <code>End Customer</code> or <code>Reseller</code>.</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>This is your <code>TENANT_ID</code>, one of the most important identifiers for your organization across the Xelon HQ API.</td>\n</tr>\n<tr>\n<td><code>active</code></td>\n<td>The status of your organization. If active, it is <code>true</code>, and if the organization is inactive, this parameter will be <code>false</code>.</td>\n</tr>\n<tr>\n<td><code>networks</code></td>\n<td>A number of networks within the organization.</td>\n</tr>\n<tr>\n<td><code>activeDevices</code></td>\n<td>A number of active devices within the organization.</td>\n</tr>\n<tr>\n<td><code>parent</code></td>\n<td>This parameter displays an ID of a parent organization related to your tenant.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["api","service","tenants"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Tenant ID of a specific organiation.</p>\n","type":"text/plain"},"key":"parent","value":"75c7cf02b782"},{"key":"with_deleted","value":"true"},{"key":"with_trashed","value":"true"}],"variable":[]}},"response":[{"id":"c33979ed-71d4-4d35-a4c2-c40e2b0df9f7","name":"List of all organizations","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|6ca8fada-b82f-4934-81f0-887e9f8df0f3|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=6ca8fada-b82f-4934-81f0-887e9f8df0f3"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 23 Feb 2022 16:59:32 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"498"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"deleted_at\": null,\n        \"active\": true,\n        \"id\": \"<TENANT_ID>\",\n        \"name\": \"<TENANT_NAME>\",\n        \"address\": \"<ADDRESS>\",\n        \"type\": \"Reseller\",\n        \"created_at\": \"<DATE>\",\n        \"networks\": 13,\n        \"activeDevices\": 16,\n        \"parent\": \"<PARENT>\",\n        \"breadcrumbs\": \"<BREADCRUMBS>\"\n    }\n]"}],"_postman_id":"8a9b3c32-3c27-440d-914c-4d59bdd92ebf"},{"name":"Add Organization","id":"9e3437ba-06f8-473d-9942-563dfdecdc66","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"2factor\": false,\n    \"address\": \"Test Address\",\n    \"city\": \"Zug\",\n    \"country\": \"Switzerland\",\n    \"financeemail\": [\n        \"<EMAIL1>\",\n        \"<EMAIL2>\"\n    ],\n    \"phone\": \"<PHONE_NUMBER>\",\n    \"postcode\": \"<ZIP>\",\n    \"supportemail\": \"<EMAIL>\",\n    \"tenantname\": \"<ORGANIZTION_NAME>\",\n    \"trial\": false,\n    \"type\": \"2\",\n    \"otp_type\": null,\n    \"trial_end\": \"<TRIAL_END>\",\n    \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n    \"region\": \"<REGION>\",\n    \"customer_support_email\": \"<CUSTOMER_SUPPORT_EMAIL>\",\n    \"customer_type\": \"<CUSTOMER_TYPE>\",\n    \"billingplan_id\": 1,\n    \"cloudId\": \"<CLOUD_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/store","description":"<p>Use this endpoint to create a tenant/organization. The configurations below can be set within the body request.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>2factor</code></td>\n<td>If <code>true</code>, will enable a 2-factor authentication for all organization's users.</td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>address</code></td>\n<td>Organization's address.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>city</code></td>\n<td>Organization's city name.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>country</code></td>\n<td>A string value with the country name.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>financeemail</code></td>\n<td>Organization's finance email; can consist of multiple emails and will have the following format: <code>financeemail: [\"address1@xelon.ch\",\"address2@xelon.ch\"]</code></td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>phone</code></td>\n<td>Organization's phone number.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>postcode</code></td>\n<td>Organization's ZIP/post code.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>supportemail</code></td>\n<td>Organization's support email.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>tenantname</code></td>\n<td>Display name of your organization.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>trial</code></td>\n<td>Set to <code>false</code>.</td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Set <code>1</code> for Reseller, and <code>2</code> for End customer organization type.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>billingplan_id</code></td>\n<td>Insert the billing plan ID if you want to assign it during the organization creation,</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>parent_identifier</code></td>\n<td>(optional) The identifier of the tenant that the new organization will belong to.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>otp_type</code></td>\n<td>Two-factor authentication type for the organization (<code>null</code> to disable).</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>trial_end</code></td>\n<td>Trial end date; used when <code>trial</code> is <code>true</code>.</td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenants","store"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"4b7bb6fc-52df-4739-872e-fcc4aacc5638","name":"Add Organization","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"2factor\": false,\n\t\"address\": \"Test Address\",\n\t\"city\": \"Zug\",\n\t\"country\": \"Switzerland\",\n\t\"financeemail\": \"<EMAIL>\",\n\t\"phone\": \"<PHONE_NUMBER>\",\n\t\"postcode\": \"<ZIP>\",\n\t\"supportemail\": \"<EMAIL>\",\n\t\"tenantname\": \"<TENANT_ID>\",\n\t\"trial\": false,\n\t\"trial_end\": \"2022-03-09\",\n\t\"type\": \"2\" \n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/store"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":null,"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"The organization has been successfully created.\",\n    \"tenant\": {\n        \"tenantname\": \"Organization Name\",\n        \"address\": \"<ADDRESS>\",\n        \"postcode\": \"<POSTCODE>\",\n        \"city\": \"Zug\",\n        \"country\": \"Switzerland\",\n        \"supportemail\": \"<EMAIL>\",\n        \"financeemail\": [\n            \"address1@xelon.ch\",\n            \"address2@xelon.ch\"\n        ],\n        \"phone\": \"<PHONE_NUMBER>\",\n        \"otp_type\": \"<OTP_TYPE>\",\n        \"tenant_identifier\": \"<TENANT_ID>\",\n        \"created_at\": \"2022-03-17T17:39:32+01:00\",\n        \"active\": false,\n        \"customer_support_email\": [],\n        \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n        \"region\": \"<REGION>\",\n        \"tax\": {},\n        \"tax_id\": 1,\n        \"taxed\": false,\n        \"trial\": false,\n        \"trial_end\": \"<TRIAL_END>\",\n        \"type\": \"<TYPE>\",\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"billingplan\": \"<BILLINGPLAN>\",\n        \"customer_type\": \"<CUSTOMER_TYPE>\"\n    }\n}"}],"_postman_id":"9e3437ba-06f8-473d-9942-563dfdecdc66"},{"name":"Organization info","event":[{"listen":"test","script":{"id":"e903571a-0e1e-4491-8c0f-dd18216fff45","exec":[""],"type":"text/javascript"}}],"id":"7938da65-30c6-4dfb-a963-ee7f44e528a2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenant/<TENANT_ID>","description":"<p>Use this endpoint to retrieve complete information about the specific organization.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>tenant_identifier</code></td>\n<td>An ID of the related organization (or <code>TENANT_ID</code>).</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Can be either a reseller (<code>1</code>) or an end customer (<code>2</code>).</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>active</code></td>\n<td>If <code>true</code>, the organization is active.</td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>1 if active, and 2 if you run out of credits on a daily billing model.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>2factor</code></td>\n<td>Set to <code>1</code> to enable 2-factor authentication, and <code>0</code> to disable it.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>account_manager</code></td>\n<td>A database ID of an account manager related to this organization.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>permissions</code></td>\n<td>See the permissions table at the top of this page.</td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>parent_identifier</code></td>\n<td>An ID of a parent organization related to this one.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>manager</code></td>\n<td>An array of manager's user profile info.</td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>vat</code></td>\n<td>Country name: see the table below.</td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"xelon-hq-vat-rates\">Xelon HQ <code>vat</code> rates</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Country, string</strong></th>\n<th><strong>Related tax rate, %</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Poland</code></td>\n<td>23</td>\n</tr>\n<tr>\n<td><code>Portugal</code></td>\n<td>23</td>\n</tr>\n<tr>\n<td><code>Ireland</code></td>\n<td>23</td>\n</tr>\n<tr>\n<td><code>Belgium</code></td>\n<td>21</td>\n</tr>\n<tr>\n<td><code>Czech Republic</code></td>\n<td>21</td>\n</tr>\n<tr>\n<td><code>Spain</code></td>\n<td>21</td>\n</tr>\n<tr>\n<td><code>Latvia</code></td>\n<td>21</td>\n</tr>\n<tr>\n<td><code>Lithuania</code></td>\n<td>21</td>\n</tr>\n<tr>\n<td><code>Netherlands</code></td>\n<td>21</td>\n</tr>\n<tr>\n<td><code>Italy</code></td>\n<td>22</td>\n</tr>\n<tr>\n<td><code>Slovenia</code></td>\n<td>22</td>\n</tr>\n<tr>\n<td><code>Germany</code></td>\n<td>19</td>\n</tr>\n<tr>\n<td><code>Cyprus</code></td>\n<td>19</td>\n</tr>\n<tr>\n<td><code>Denmark</code></td>\n<td>25</td>\n</tr>\n<tr>\n<td><code>Croatia</code></td>\n<td>25</td>\n</tr>\n<tr>\n<td><code>Sweden</code></td>\n<td>25</td>\n</tr>\n<tr>\n<td><code>Finland</code></td>\n<td>24</td>\n</tr>\n<tr>\n<td><code>Hungary</code></td>\n<td>27</td>\n</tr>\n<tr>\n<td><code>Malta</code></td>\n<td>18</td>\n</tr>\n<tr>\n<td><code>United Kingdom</code></td>\n<td>20</td>\n</tr>\n<tr>\n<td><code>Estonia</code></td>\n<td>20</td>\n</tr>\n<tr>\n<td><code>France</code></td>\n<td>20</td>\n</tr>\n<tr>\n<td><code>Austria</code></td>\n<td>20</td>\n</tr>\n<tr>\n<td><code>Slovakia</code></td>\n<td>20</td>\n</tr>\n<tr>\n<td><code>Luxembourg</code></td>\n<td>17</td>\n</tr>\n<tr>\n<td><code>Greece</code></td>\n<td>24</td>\n</tr>\n<tr>\n<td><code>Romania</code></td>\n<td>19</td>\n</tr>\n<tr>\n<td><code>Switzerland</code></td>\n<td>7</td>\n</tr>\n<tr>\n<td><code>Liechtenstein</code></td>\n<td>7</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Please note that your <code>vat</code> parameter should have a string country value. Example: <code>\"vat\": \"Greece\"</code>.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenant","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"2f9a8cd6-f606-450e-aed6-94615c0e5701","name":"Organization info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenant/<TENANT_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:16:21 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=ugxUXAhFseye%2Ba20QADt5AI9YdIOCbbbhBHdS2Gm2VKQsMAUNz8t1QaqrA61NHY%2BWVWLsRtqdRBbsSSB2OHuuAnSEcdNjSV4YM0uRwo4vwQe5jJrd5EBnzT76f1X9w%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed76033b9d178a5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"tenant_identifier\": \"<TENANT_ID>\",\n    \"created_at\": \"2018-02-22T12:45:00+01:00\",\n    \"updated_at\": \"2022-02-09T12:43:14+01:00\",\n    \"deleted_at\": null,\n    \"tenantname\": \"<NAME>\",\n    \"address\": \"<ADDRESS>\",\n    \"address2\": \"<ADDRESS2>\",\n    \"supportemail\": \"<ADDRESS>\",\n    \"financeemail\": [\n        \"<ADDRESS>\",\n        \"<ADDRESS2>\"\n    ],\n    \"phone\": \"<PHONE_NUMBER>\",\n    \"city\": \"<CITY>\",\n    \"postcode\": \"<POSTCODE>\",\n    \"country\": \"Switzerland\",\n    \"vat\": 1,\n    \"type\": \"Reseller\",\n    \"active\": true,\n    \"2factor\": 1,\n    \"billing_frequency\": \"monthly\",\n    \"lastActivities\": [\n        {\n            \"id\": 571338,\n            \"user\": \"<USER_MAIL>\",\n            \"body\": \"User has been deleted\",\n            \"createdOn\": \"2022-03-17 17:18:32\"\n        }\n    ],\n    \"users\": [\n        {\n            \"id\": 67,\n            \"created_at\": \"2018-03-28 14:00:22\",\n            \"email\": \"<EMAIL>\",\n            \"name\": \"<NAME>\",\n            \"surname\": \"<SURNAME>\",\n            \"phone\": \"<PHONE_NUMBER>\",\n            \"business_phone\": null,\n            \"job_title\": null,\n            \"roles\": [],\n            \"permissions\": [],\n            \"child_tenants\": []\n        }\n    ],\n    \"account_manager\": null,\n    \"allow_bank_transfer\": false,\n    \"allow_trial_creation\": false,\n    \"available_partner_statuses\": null,\n    \"billingplan\": 1,\n    \"changeBilling\": false,\n    \"changeInvoice\": false,\n    \"credits_code_id\": null,\n    \"currency_id\": null,\n    \"customer_id\": null,\n    \"customer_support_email\": \"<EMAIL>\",\n    \"customer_type\": null,\n    \"deactivation_date\": null,\n    \"demo\": false,\n    \"demo_end\": null,\n    \"demo_start\": null,\n    \"discount\": 1,\n    \"fixed_recurring\": 1,\n    \"fraud_risk_score\": 1,\n    \"hs_object_id\": null,\n    \"invoice_type\": \"<INVOICE_TYPE>\",\n    \"isXelonChild\": false,\n    \"manager\": null,\n    \"minimum_recurring\": 1,\n    \"notes\": null,\n    \"otp_type\": null,\n    \"paid\": 1,\n    \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n    \"partner_status\": null,\n    \"report_frequency\": null,\n    \"requested\": null,\n    \"resource_pool\": null,\n    \"status\": 1,\n    \"tax_id\": 1,\n    \"taxed\": 1,\n    \"trial\": false,\n    \"trial_end\": null,\n    \"trial_start\": null,\n    \"upgrade_modal_active\": 1,\n    \"withhold_invoices\": 1\n}"}],"_postman_id":"7938da65-30c6-4dfb-a963-ee7f44e528a2"},{"name":"List of organization's clouds","id":"c12193c7-e99b-449d-8a43-ea8a44436909","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/hv/list/<TENANT_ID>","description":"<p>This endpoint allows you to get the list of all clouds available within a specific organization.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>display_name</code></td>\n<td>Display name of a specific cloud.</td>\n</tr>\n<tr>\n<td><code>hv_type</code></td>\n<td>Cloud type; can be either <code>public</code> or <code>private</code>.</td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>The cloud's ID.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Cloud type. <code>1</code> – private, <code>2</code> – public, <code>3</code> – whitelist.</td>\n</tr>\n<tr>\n<td><code>billing_frequency</code></td>\n<td>Invoicing frequency, can be either <code>monthly</code> or <code>yearly</code>.</td>\n</tr>\n<tr>\n<td><code>demo</code></td>\n<td>Indicates whether a demo is still enabled (<code>1</code>) or disabled (<code>0</code>).</td>\n</tr>\n<tr>\n<td><code>fraud_risk_score</code></td>\n<td>A risk of spam/bot organization measured in percents.</td>\n</tr>\n<tr>\n<td><code>allow_bank_transfer</code></td>\n<td>Indicates whether the organization is allowed to make bank transfers. Can be enabled (<code>1</code>) or disabled (<code>0</code>).</td>\n</tr>\n<tr>\n<td><code>upgrade_modal_active</code></td>\n<td>Indicates whether the modal window with bank account data is displayed. Can be enabled (<code>1</code>) or disabled (<code>0</code>).</td>\n</tr>\n<tr>\n<td><code>hs_object_id</code></td>\n<td>Hubspot ID for a specific organization. Soon to be deprecated.</td>\n</tr>\n<tr>\n<td><code>report_frequency</code></td>\n<td>Indicates how often reports should be sent. Can be either <code>monthly</code>, <code>weekly</code>, or <code>bi-weekly</code>.</td>\n</tr>\n<tr>\n<td><code>customer_type</code></td>\n<td>Customer type. Can be either <code>system-integrator</code>, <code>developer-saas</code>, <code>enterprise</code>, or <code>internal</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","hv","list","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"b17b5a9b-b864-413e-94a7-bd3c814d37d3","name":"List of organization's clouds","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/hv/list/<TENANT_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 10:08:49 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=LNuTlJbxS4x1ZOpm90Sd5sjCF41qIoUfvnK2xq%2FnLcADhSgjmMCoIiEg2YdeT8y5Thg2ZwtKq8i5T8jJZTU2Aqd%2FSwwgXOajEy7GEDL48EiaZpmaJQSPdEtPHLzrC2s%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"717059504ce277ec-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 1,\n        \"display_name\": \"<CLOUD_NAME>\",\n        \"hv_type\": \"public\",\n        \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n        \"identifier\": \"<IDENTIFIER>\",\n        \"main_cloud\": 1,\n        \"type\": 1,\n        \"version\": 1\n    }\n]"}],"_postman_id":"c12193c7-e99b-449d-8a43-ea8a44436909"},{"name":"List of subtenants","id":"9ca98789-c6dd-4670-91f4-b92165ca988f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/subtenants?sort=name-asc&filter=1&isDeleted=true","description":"<p>Displays the list of subtenants using a specific sorting <code>sort</code> parameter and optional <code>filter</code> for subtenant type.</p>\n<h3 id=\"sort-required\"><code>sort</code> (required)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Value</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>name-asс</code></td>\n<td>Alphabetical sorting, ascending order (A-Z).</td>\n</tr>\n<tr>\n<td><code>name-desc</code></td>\n<td>Alphabetical sorting, descending order (Z-A).</td>\n</tr>\n<tr>\n<td><code>created-asc</code></td>\n<td>Creation date sorting, ascending order.</td>\n</tr>\n<tr>\n<td><code>created-desc</code></td>\n<td>Creation date sorting, descending order.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"filter-optional\"><code>filter</code> (optional)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Value</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>1</code></td>\n<td>Reseller subtenants</td>\n</tr>\n<tr>\n<td><code>2</code></td>\n<td>End customer subtenants</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Making a request without the <code>filter</code> query will display both subtenant types. </p>\n</blockquote>\n<h3 id=\"isdeleted-optional\"><code>isDeleted</code> (optional)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Value</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>true</code></td>\n<td>Will display deleted subtenants as well.</td>\n</tr>\n<tr>\n<td><code>false</code></td>\n<td>ill display only active subtenants.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","subtenants"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Required parameter for item sorting order.</p>\n","type":"text/plain"},"key":"sort","value":"name-asc"},{"key":"filter","value":"1"},{"description":{"content":"<p>Set to <code>true</code> to display deleted subtenants as well.  </p>\n","type":"text/plain"},"key":"isDeleted","value":"true"}],"variable":[]}},"response":[{"id":"fe26de8a-29b7-4477-9cb7-23887c035ac9","name":"List of subtenants","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/subtenants?sort=name-asc&filter=1","host":["https://vdc.xelon.ch"],"path":["api","service","tenants","<TENANT_ID>","subtenants"],"query":[{"key":"sort","value":"name-asc","description":"Required parameter for item sorting order."},{"key":"filter","value":"1","description":"Organiation type filter."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"name\": \"<SUBTENANT_NAME>\",\n        \"active\": true,\n        \"tenant_identifier\": \"<TENANT_ID>\",\n        \"created_at\": \"2022-03-17T17:39:32+01:00\",\n        \"deleted_at\": null,\n        \"usersCount\": 3,\n        \"activeDevicesCount\": 5,\n        \"children\": [\n            {\n                \"name\": \"<SUBTENANT_NAME>\",\n                \"active\": true,\n                \"tenant_identifier\": \"<TENANT_ID>\",\n                \"created_at\": \"2022-03-17T17:39:32+01:00\",\n                \"deleted_at\": null,\n                \"usersCount\": 1,\n                \"activeDevicesCount\": 0,\n                \"children\": null\n            }\n        ]\n    }\n]"}],"_postman_id":"9ca98789-c6dd-4670-91f4-b92165ca988f"},{"name":"Update organization's contact info","id":"b9d16619-7d54-484c-abb2-efeba525aeab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"financeemail\": [\n        \"<EMAIL1>\",\n        \"<EMAIL2>\"\n    ],\n    \"phone\": \"<PHONE_NUMBER>\",\n    \"supportemail\": \"<EMAIL>\",\n    \"customer_support_email\": \"<CUSTOMER_SUPPORT_EMAIL>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/updateContact","description":"<p>Use this endpoint to change your organization's finance/support email or phone number.</p>\n<h3 id=\"additional-parameters\">Additional parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>customer_support_email</code></td>\n<td>Organization's customer support email (optional).</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","updateContact"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"70792ca1-d05a-45b4-8e5f-6a99a9ef30fa","name":"Update organization's contact info","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"financeemail\": \"nomail1@xelon.ch\",\n\t\"phone\": \"<PHONE_NUMBER>\",\n\t\"supportemail\": \"nomail1@xelon.ch\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/updateContact"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:20:26 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=OmXhGeF%2BNyekoM22wXJPlcBwadXdcae9OidKP8WwQ0DkabPusHsPAOUtPu1PjKBxTa0m4yiNKCBvMHkbCWuaVgkqRBEth10mhD86wFkZZYMKN7488wWqrSOUfWnu7Q%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed76632795878a5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"tenant_identifier\": \"<TENANT_ID>\",\n    \"created_at\": \"2018-02-22T12:45:00+01:00\",\n    \"tenantname\": \"<TENANT_NAME>\",\n    \"address\": \"<ADDRESS1>\",\n    \"address2\": \"<ADDRESS2>\",\n    \"supportemail\": \"<EMAIL>\",\n    \"financeemail\": [],\n    \"phone\": \"+41712372321\",\n    \"city\": \"<CITY>\",\n    \"postcode\": \"6331\",\n    \"country\": \"Switzerland\",\n    \"active\": true,\n    \"otp_type\": 1,\n    \"billingplan\": 1,\n    \"invoice_type\": \"per_service\",\n    \"report_frequency\": \"bi-weekly\",\n    \"allow_bank_transfer\": false,\n    \"allow_trial_creation\": false,\n    \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n    \"customer_support_email\": \"<EMAIL>\",\n    \"demo\": false,\n    \"fixed_recurring\": 1,\n    \"fraud_risk_score\": 1,\n    \"message\": \"<MESSAGE>\",\n    \"minimum_recurring\": 1,\n    \"paid\": 1,\n    \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n    \"status\": 1,\n    \"tax_id\": 1,\n    \"taxed\": 1,\n    \"trial\": false,\n    \"trial_end\": \"<TRIAL_END>\",\n    \"type\": 1,\n    \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n    \"upgrade_modal_active\": 1,\n    \"withhold_invoices\": 1,\n    \"account_manager\": null,\n    \"credits_code_id\": null,\n    \"currency_id\": null,\n    \"customer_id\": null,\n    \"customer_type\": null,\n    \"deactivation_date\": null,\n    \"deleted_at\": \"2026-01-01T12:00:00+01:00\",\n    \"demo_end\": null,\n    \"demo_start\": null,\n    \"discount\": null,\n    \"hs_object_id\": null,\n    \"requested\": null,\n    \"resource_pool\": null,\n    \"trial_start\": null\n}"}],"_postman_id":"b9d16619-7d54-484c-abb2-efeba525aeab"},{"name":"List of organization's networks","id":"5c0f4ff9-2349-410d-b786-09362d668d09","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks","description":"<p>This endpoint retrieves a list of networks available within a specified organization/tenant, as well as their count and a <code>subnet</code>s (if available).</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>networks</code></td>\n<td>An array of all networks available within a specific organization.</td>\n</tr>\n<tr>\n<td><code>wannetwork_count</code></td>\n<td>A number of available WAN networks.</td>\n</tr>\n<tr>\n<td><code>lannetwork_count</code></td>\n<td>A number of available LAN networks.</td>\n</tr>\n<tr>\n<td><code>tenantidentifier</code></td>\n<td>An ID of a related organization.</td>\n</tr>\n<tr>\n<td><code>subnets</code></td>\n<td>An array which displays the related subnets (if available). Format: <code>[\"/24\", \"/35\", \"/29\"]</code>.</td>\n</tr>\n<tr>\n<td><code>templatetype</code></td>\n<td>Type of a template. Can be either <code>Windows</code>, <code>Linux</code>, <code>Sophos</code>, <code>pfSense</code>, <code>SonicWALL</code>, <code>Barracuda</code>, <code>ISO</code>, <code>Custom</code>, <code>FortiGate</code>.</td>\n</tr>\n<tr>\n<td><code>category</code></td>\n<td>Template category. Can be either <code>Custom</code>, <code>Server</code>, <code>Firewall</code>, or <code>Generic</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","<TENANT_ID>","networks"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"48b28fbb-9c40-4130-95fb-955b8f28469f","name":"List of organization's networks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:38:58 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=JkCKUaQai%2F07R7u1wvu2F%2FCg%2F%2BTKdw6DPnRUIZd3SRUgzuDQmhNQ2lhoXjCSYr8qCbcPFXfbxrZGO8%2FJ4U5Kc5aEe3uTkkOIKHtq6w1t7wifOZoQCcCOJJYb%2BtQMlw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed7297298eafcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"networks\": [\n        {\n            \"id\": 123,\n            \"name\": \"<NETWORK_NAME>\",\n            \"network\": \"1.2.3.4\",\n            \"type\": \"LAN\",\n            \"assigned\": \"<ASSIGNED_TENANT_NAME>\",\n            \"tenant\": {\n                \"tenant_identifier\": \"<TENANT_ID>\"\n            },\n            \"subnet\": \"24\",\n            \"hv_type\": \"public\",\n            \"hv_systems\": [\n                {\n                    \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n                    \"id\": 1,\n                    \"type\": 1\n                }\n            ]\n        }\n    ],\n    \"wannetwork_count\": 1,\n    \"lannetwork_count\": 1,\n    \"tenantidentifier\": \"<TENANT_ID>\",\n    \"subnets\": [\n        \"/29\"\n    ]\n}"}],"_postman_id":"5c0f4ff9-2349-410d-b786-09362d668d09"},{"name":"Update organization's name & address","event":[{"listen":"test","script":{"id":"6cc87202-4f30-4f95-b932-b0dd4f1c5fc9","exec":[""],"type":"text/javascript"}}],"id":"0e96c47d-8280-4e88-8899-1f2735e6f0e4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"address\": \"Address Line 1\",\n    \"address2\": \"Address Line 2\",\n    \"city\": \"Magic City\",\n    \"country\": \"Dream Country\",\n    \"postcode\": \"88900\",\n    \"tenantname\": \"Docs Org\",\n    \"region\": \"New York\"\n}"},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/updateAddress","description":"<p>Use this endpoint to rename the specific organization or change its address information.</p>\n<p>A <code>200 OK</code> response retireves the updated info of your organization.</p>\n<h3 id=\"additional-parameters\">Additional parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>region</code></td>\n<td>Organization's region (optional).</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","updateAddress"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"a9cd0a61-63bd-41b5-8595-c8bccd8c13ac","name":"Update organization's name & address","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"address\": \"Address Line 1\",\n\t\"address2\": \"Address Line 2\",\n\t\"city\": \"Magic City\",\n\t\"country\": \"Dream Country\",\n\t\"postcode\": \"88900\",\n\t\"tenantname\": \"Docs Org\"\n}"},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/updateAddress"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:40:23 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=koupW3165HNe99RHc0S8F3AXwjQZ08hvEfFlvvfzdFHJPe%2Bb%2Fc%2BCR2TrpDp7oP8epAKPWyeK6IRhuCA1wS9A3UvlWHq6RavJkmzcE2jYg%2BS7t9gP4sidQVZh2A0dXA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed72b869b16fcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"tenant_identifier\": \"<TENANT_ID>\",\n    \"created_at\": \"2022-03-17T17:39:32+01:00\",\n    \"tenantname\": \"Docs Org\",\n    \"address\": \"Address Line 1\",\n    \"address2\": \"Address Line 2\",\n    \"supportemail\": \"address@xelon.ch\",\n    \"financeemail\": [\n        \"address1@xelon.ch\",\n        \"address2@xelon.ch\"\n    ],\n    \"phone\": \"<PHONE>\",\n    \"city\": \"Magic City\",\n    \"postcode\": \"88900\",\n    \"country\": \"Dream Country\",\n    \"2factor\": 0,\n    \"region\": \"<REGION>\",\n    \"\\\"2factor\\\"\": null,\n    \"\\\"message\\\"\": \"<\\\"MESSAGE\\\">\"\n}"}],"_postman_id":"0e96c47d-8280-4e88-8899-1f2735e6f0e4"},{"name":"Delete organization","event":[{"listen":"test","script":{"id":"a2c7d606-f8f6-4bf2-942c-0f4f15edb1d8","exec":["pm.test(\"Correct response format JSON\", function(){","    pm.response.to.have.jsonBody()","});","pm.test(\"Res should exist, be a Object\", function () {","    pm.expect(pm.response.json()).to.be.a(\"Object\");","});","const jsonData = pm.response.json();","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","pm.test('Check message \"Organization has been deleted!\"', function(){","    pm.expect(jsonData.message).to.eql(\"Organization has been deleted!\");","});"],"type":"text/javascript"}}],"id":"28fdd677-103a-49ab-bb41-dfb4646a8429","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/delete","description":"<p>Use this endpoint to delete a specific organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","<TENANT_ID>","delete"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"924e1ac1-99fb-48ea-8d5d-de5a5cd7c451","name":"Delete organization","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/29e16a4b2471/delete"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:40:49 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=gWZ%2FwI3eHYMNtT0XkqJJEqoI%2BCd8q2Yu8jScAHY2Wy7ccpYWGpgifz5Suh%2BKwnfk3DmWAJ30PizF6yITMR5Uj71NOs6mmUVYF3myuWQV3bq3uDcw3i%2F38RuhaVnPYQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed72c2ad8c9fcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Organization has been deleted.\"\n}"}],"_postman_id":"28fdd677-103a-49ab-bb41-dfb4646a8429"},{"name":"Current organization info","id":"a39b8476-1899-4fba-9298-26bfe4abe8cc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenant","description":"<p>Use this endpoint to get the information about the organization of the authorized user.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenant"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"7c31ebcd-1d74-449b-b9ca-66089c50eeff","name":"Current organization info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenant","description":"Use this endpoint to get the information about the organization of the authorized user."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"tenant_identifier\": \"<TENANT_IDENTIFIER>\"\n}"}],"_postman_id":"a39b8476-1899-4fba-9298-26bfe4abe8cc"},{"name":"Datastore free space","id":"f2843e77-56dd-4b9b-9aa7-cfa1b4f3c6bc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/hv-system/get-datastore-free-space?id=<CLOUD_ID>","description":"<p>Use this endpoint to get the free space of the datastore of a cloud.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","hv-system","get-datastore-free-space"],"host":["https://vdc.xelon.ch"],"query":[{"key":"id","value":"<CLOUD_ID>"}],"variable":[]}},"response":[{"id":"bd85f24d-c812-4f7d-8e38-ba497506a44f","name":"Datastore free space","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/hv-system/get-datastore-free-space?id=<CLOUD_ID>","host":["https://vdc.xelon.ch"],"path":["api","service","hv-system","get-datastore-free-space"],"query":[{"key":"id","value":"<CLOUD_ID>"}]},"description":"Use this endpoint to get the free space of the datastore of a cloud."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"sizeGb\": 1\n}"}],"_postman_id":"f2843e77-56dd-4b9b-9aa7-cfa1b4f3c6bc"},{"name":"Activate or deactivate organization","id":"a9721928-67c7-4e4b-a199-84a622d298f7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/activation","description":"<p>Use this endpoint to toggle the active status of an organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","name":"Organizations","type":"folder"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","activation"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"a9721928-67c7-4e4b-a199-84a622d298f7"}],"id":"ae14c637-316c-49e3-83a3-2a686ddc7ede","description":"<h3 id=\"overview\">Overview</h3>\n<p>Organization (<code>tenant</code> for technical jargon) is a top-level instance that identifies the owner in charge of one or many sub-organizations within the platform. Organization can either represent a single business, or an IT services provider who manages multiple sub-organizations on behalf of their clients' businesses.</p>\n<blockquote>\n<p>Please note that <strong>Tenants</strong> and <strong>Organizations</strong> are different names of the same product concept.</p>\n</blockquote>\n<h3 id=\"key-concepts\">Key concepts</h3>\n<p><code>tenant_id</code> — a unique identifier for any organization.</p>\n<p><code>userId</code> — a unique identifier for any user within the organization.</p>\n<p><code>token</code> — a unique 'password' for accessing our API which can be generated only once.</p>\n<blockquote>\n<p>Learn more about organization management <a href=\"https://www.xelon.ch/docs/organization-management\">here</a>.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":false},"event":[{"listen":"prerequest","script":{"id":"661e2cff-f405-41f4-9d70-92a8b94f72f7","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"92180b51-db08-45fa-adb0-c6e959d901ff","type":"text/javascript","exec":[""]}}],"_postman_id":"ae14c637-316c-49e3-83a3-2a686ddc7ede"},{"name":"Organization Users","item":[{"name":"Add user","event":[{"listen":"test","script":{"id":"997230d3-aa63-4a13-bf2d-15b5786409ae","exec":[""],"type":"text/javascript"}}],"id":"e5f8504e-4958-44d3-b1c0-865660289cc2","protocolProfileBehavior":{"disableBodyPruning":true,"disabledSystemHeaders":{"content-type":true,"accept-encoding":true,"connection":true}},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n\t\"business_phone\": \"<PHONE_NUMBER>\",\r\n\t\"child_tenants\": [\r\n\t\t\"<TENANT_ID>\"\r\n\t],\r\n\t\"email\": \"nomail@xelon.ch\",\r\n\t\"job_title\": \"ceo\",\r\n\t\"name\": \"James\",\r\n\t\"password\": \"<PASSWORD>\",\r\n\t\"password_confirmation\": \"<PASSWORD>\",\r\n\t\"passwordShouldBeChanged\": false,\r\n\t\"permissions\": [\r\n\t\t\"allow_view_virtual_machines\",\r\n\t\t\"allow_create_network\",\r\n\t\t\"allow_create_templates\",\r\n\t\t\"allow_create_users\",\r\n\t\t\"allow_create_virtual_machine\",\r\n\t\t\"allow_delete_users\",\r\n\t\t\"allow_delete_virtual_machine\",\r\n\t\t\"allow_manage_network\",\r\n\t\t\"allow_manage_templates\",\r\n\t\t\"allow_manage_users\",\r\n\t\t\"allow_manage_virtual_machine_backups\",\r\n\t\t\"allow_manage_virtual_machine_info\",\r\n\t\t\"allow_manage_virtual_machine_monitoring\",\r\n\t\t\"allow_manage_virtual_machine_resources\",\r\n\t\t\"allow_manage_virtual_machine_scripts\",\r\n\t\t\"allow_manage_virtual_machine_snapshots\",\r\n\t\t\"allow_manage_virtual_machine_status\",\r\n\t\t\"allow_view_network\",\r\n\t\t\"allow_view_networking\",\r\n\t\t\"allow_view_organization_reports\",\r\n\t\t\"allow_view_organizations\",\r\n\t\t\"allow_view_templates\",\r\n\t\t\"allow_view_usage_overview\",\r\n\t\t\"allow_view_usage_reports\",\r\n\t\t\"allow_view_virtual_machine\",\r\n\t\t\"allow_view_virtual_machine_reports\",\r\n\t\t\"allow_manage_disaster_recovery\",\r\n\t\t\"allow_view_credits_info\",\r\n\t\t\"allow_manage_payment_methods\"\r\n\t],\r\n\t\"phone\": \"<PHOHE>\",\r\n\t\"roles\": [\r\n\t\t\"hq_organization_admin\"\r\n\t],\r\n\t\"surname\": \"Peterson\",\r\n\t\"welcomeEmail\": false\r\n}"},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/store","description":"<p>Use this endpoint to add a new user within the specific organization. Response retrieves a user's <code>id</code> which can be used for managing users across your organization.</p>\n<p>Among the required fields, there are:</p>\n<ul>\n<li>First and Last Name</li>\n<li>Email</li>\n<li>Job Title</li>\n<li>Mobile and Business phone numbers</li>\n<li>Password</li>\n</ul>\n<p>When creating a user, you can also:</p>\n<ul>\n<li>set <code>true</code> for <code>welcomeEmail</code> if you want to send a welcome email and Username/Password to the new user</li>\n<li>set <code>true</code> for <code>passwordShouldBeChanged</code> if you want the user to change the password after the first login</li>\n</ul>\n<blockquote>\n<p>Learn more about user's <code>permissions</code> at the top of this page.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","users","store"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"d1b908dd-256c-407d-9293-0916df7a1fbe","name":"Add user","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Accept","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n\t\"business_phone\": \"<PHONE_NUMBER>\",\r\n\t\"child_tenants\": [\r\n\t\t\"<TENANT_ID>\"\r\n\t],\r\n\t\"email\": \"nomail@xelon.ch\",\r\n\t\"job_title\": \"ceo\",\r\n\t\"name\": \"Jordan B.\",\r\n\t\"password\": \"tesSt1234@\",\r\n\t\"password_confirmation\": \"tesSt1234@\",\r\n\t\"passwordShouldBeChanged\": false,\r\n\t\"permissions\": [\r\n\t\t\"allow_view_virtual_machines\",\r\n\t\t\"allow_create_network\",\r\n\t\t\"allow_create_templates\",\r\n\t\t\"allow_create_users\",\r\n\t\t\"allow_create_virtual_machine\",\r\n\t\t\"allow_delete_users\",\r\n\t\t\"allow_delete_virtual_machine\",\r\n\t\t\"allow_manage_network\",\r\n\t\t\"allow_manage_templates\",\r\n\t\t\"allow_manage_users\",\r\n\t\t\"allow_manage_virtual_machine_backups\",\r\n\t\t\"allow_manage_virtual_machine_info\",\r\n\t\t\"allow_manage_virtual_machine_monitoring\",\r\n\t\t\"allow_manage_virtual_machine_resources\",\r\n\t\t\"allow_manage_virtual_machine_scripts\",\r\n\t\t\"allow_manage_virtual_machine_snapshots\",\r\n\t\t\"allow_manage_virtual_machine_status\",\r\n\t\t\"allow_view_network\",\r\n\t\t\"allow_view_networking\",\r\n\t\t\"allow_view_organization_reports\",\r\n\t\t\"allow_view_organizations\",\r\n\t\t\"allow_view_templates\",\r\n\t\t\"allow_view_usage_overview\",\r\n\t\t\"allow_view_usage_reports\",\r\n\t\t\"allow_view_virtual_machine\",\r\n\t\t\"allow_view_virtual_machine_reports\",\r\n\t\t\"allow_manage_disaster_recovery\",\r\n\t\t\"allow_view_credits_info\",\r\n\t\t\"allow_manage_payment_methods\"\r\n\t],\r\n\t\"phone\": \"+380688594989\",\r\n\t\"roles\": [\r\n\t\t\"hq_organization_admin\"\r\n\t],\r\n\t\"surname\": \"Peterson\",\r\n\t\"welcomeEmail\": false\r\n}"},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/store"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:14:48 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=cZRJxZVqB8LOXIj%2Fn8eiXlGbTWOwBZ9YxKIhRTfhfH%2BYZKTHNAAIQ8pNRc1hO%2F9cL2FMvZAwNAD5NQMUVq%2F%2Fv9Ts4BSvWuxKHFckbrEfT4DSuzdgJe9ugbFq%2BkoriA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed7060d4eae7816-VIE"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"User successfully added.\",\n\t\"user\": {\n\t\t\"id\": 1234,\n\t\t\"name\": \"<FIRST_NAME>\",\n\t\t\"surname\": \"<LAST_NAME>\",\n\t\t\"email\": \"example@gmail.com\",\n\t\t\"tenantIdentifier\": \"<TENANT_ID>\"\n\t}\n}"}],"_postman_id":"e5f8504e-4958-44d3-b1c0-865660289cc2"},{"name":"Update user","event":[{"listen":"prerequest","script":{"id":"93ef6994-2ac1-4fe0-8efb-7a9f8f8014ba","exec":[""],"type":"text/javascript","packages":{}}},{"listen":"test","script":{"id":"3570f161-dbf5-40d8-b568-433fb41525d4","exec":["pm.test(\"Correct response format JSON\", function(){","    pm.response.to.have.jsonBody()","});","pm.test(\"Res should exist, be a Object\", function () {","    pm.expect(pm.response.json()).to.be.a(\"Object\");","});","const jsonData = pm.response.json();","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","pm.test('Check message \"User successfully added.\"', function(){","    pm.expect(jsonData.message).to.eql(\"User successfully updated.\");","});"],"type":"text/javascript","packages":{}}}],"id":"0199aeb2-ffc6-4c4b-8a38-0f13fe51c1d3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n\t\"business_phone\": \"<PHONE_NUMBER>\",\r\n\t\"job_title\": \"ceo\",\r\n\t\"name\": \"James\",\r\n\t\"phone\": \"<PHONE_NUMBER>\",\r\n\t\"surname\": \"Peterson\"\r\n}"},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/<USER_ID>","description":"<p>Use this endpoint to change the user's name, phone numbers, or password.</p>\n<blockquote>\n<p>All values should be in a <strong>string</strong> format. All fields are required. </p>\n</blockquote>\n<p>Learn more about the user's <strong>permissions</strong> at the top of this page.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>business_phone</code></td>\n<td>User's business phone number</td>\n</tr>\n<tr>\n<td><code>job_title</code></td>\n<td>User's job title. Can be either <code>ceo</code>, <code>cto</code>, <code>ciso_compliance</code>, <code>sysadmin_devops</code>, <code>developer</code>, <code>finance</code>, or <code>other</code>.</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>User's name.</td>\n</tr>\n<tr>\n<td><code>phone</code></td>\n<td>User's mobile phone number.</td>\n</tr>\n<tr>\n<td><code>surname</code></td>\n<td>User's surname.</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>The password must be 6 to 128 characters long and include a number, a lower &amp; upper case letters.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","users","<USER_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"f73f8bc8-f99c-4dcd-af2d-8881170ec51c","name":"Update user","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n\t\"business_phone\": \"<PHONE_NUMBER>\",\r\n\t\"job_title\": \"ceo\",\r\n\t\"name\": \"Jordan B.\",\r\n\t\"phone\": \"<PHONE_NUMBER>\",\r\n\t\"surname\": \"Peterson, PhD\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/<USER_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 26 May 2022 09:26:22 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=I2blpSC9EdyAydq%2B%2FFbPb5i9vy9oImVI68He%2FBYbyWnw2NR2ra4Zyux1E7y%2B9Vqop%2BG%2FAQbqg44ZbWmNGOLszldQ8rA0VjKFPEabgVquXQ1urrKSAuSvYiC2HInCUJQ%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"71157804288b24a4-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 1234,\n    \"identifier\": \"<USER_ID>\",\n    \"firstname\": \"James\",\n    \"surname\": \"Peterson\",\n    \"full_name\": \"James Peterson\",\n    \"email\": \"example@gmail.com\",\n    \"phone\": \"<PHONE_NUMBER>\",\n    \"business_phone\": \"<PHONE_NUMBER>\",\n    \"job_title\": \"ceo\",\n    \"tenantIdentifier\": \"<TENANT_ID>\",\n    \"tenantName\": \"Organization Name\",\n    \"roleNames\": [\n        \"role_1\"\n    ],\n    \"permissions\": [],\n    \"passwordShouldBeChanged\": false,\n    \"onboarding_completed\": true,\n    \"message\": \"User updated successfully.\",\n    \"acceptDocumentsDaysLeft\": 1,\n    \"allowCreatingTrial\": false,\n    \"allowEditAdminPanel\": false,\n    \"auth_source\": \"<AUTH_SOURCE>\",\n    \"avatar\": \"<AVATAR>\",\n    \"country_code\": null,\n    \"createdAfterDocumentsDeadline\": false,\n    \"credits\": 1,\n    \"customerSupportEmail\": \"<EMAIL>\",\n    \"customerType\": null,\n    \"deleted_at\": null,\n    \"demoTenant\": false,\n    \"demo_days\": 1,\n    \"featureFlags\": [],\n    \"hasDocumentsToAccept\": false,\n    \"have_network\": false,\n    \"have_payment\": false,\n    \"isFirstTenant\": false,\n    \"isLegalDocsActive\": false,\n    \"isXelonChild\": false,\n    \"is_sso_bypass_user\": false,\n    \"is_sso_session\": false,\n    \"paidTenant\": false,\n    \"social_identities\": [],\n    \"sso_group_bundles\": [],\n    \"tenantType\": 1,\n    \"tenant_sso_enabled\": false,\n    \"upgradeModalActive\": false\n}"}],"_postman_id":"0199aeb2-ffc6-4c4b-8a38-0f13fe51c1d3"},{"name":"Delete user","id":"f5fa067f-571a-4763-86e9-14ec20cf8af3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\n    \"revokeTokens\": false,\n    \"transferTokensTo\": \"<USER_IDENTIFIER>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/<USER_ID>/delete","description":"<p>Delete a specific user. Requires <code>tenantIdentifier</code> and <code>userId</code> values.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","<USER_ID>","delete"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e33df437-52c6-4baa-a16b-70aeda65af9c","name":"Delete user","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/1697/delete"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:19:05 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=c0q7rMbgyCy7dUZco%2BliaVI28hsTDpEzOAYvGIk8R9FeFV4mxuszTgOZ7UHiQ9lv4LiWitp1zwTLny40owT0Sz8yuJDrjTqSEUZUEIaMAnKOPuBERx27Acc17ssVXw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed70c526b26fcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"User has been deactivated.\"\n}"}],"_postman_id":"f5fa067f-571a-4763-86e9-14ec20cf8af3"},{"name":"Restore user","id":"e2f2ac53-a933-46b7-895f-ae3c7760d696","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"userId\": <USER_ID>\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/restore","description":"<p>No user in Xelon HQ can be manually deleted, but deactivated. This endpoint allows you to restore a user by their <code>userId</code> in the request body.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","users","restore"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0f60fe8b-1325-48cc-8948-0738ee920f0d","name":"Restore user","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"userId\": 1696\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/restore"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 13:18:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=Mn7CqMLuyF3GkjhDFVYfcFpFu9ZeADHwxSdUDmUvryMfZg1MLPq8LKLq3BS1SYK%2Bf%2B7%2F7sxcC2YHXq0F967mMj8Fj%2FrAXcIPc8DduWVGQf6R%2FJ7ie1gobowlLT%2BKDA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ede41875f0ffca5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"User has been restored.\"\n}"}],"_postman_id":"e2f2ac53-a933-46b7-895f-ae3c7760d696"},{"name":"Roles","id":"3f477814-7fe5-4905-baf0-b1f8719a9159","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/roles","description":"<p>Use this endpoint to retrieve a list of roles available within your tenant.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","users","roles"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"fe84a701-3686-4774-937c-5021899a89b4","name":"Roles","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/roles"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:27:48 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=WUD%2BLmQq6OAn1mbgtg%2BAd%2FkpOYAVDQ5tXTKk6j7e7h9SQYzt5cptosupsnuDLF2XOddsnbYWf%2Fg13DIie4a4HjPTuaBT%2BKhmVkAknQf%2B3cCbLVCbKre%2BtK9f9gWJcQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed71917ec21fcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 21,\n        \"name\": \"role_1\",\n        \"friendlyName\": \"First role\",\n        \"type\": null,\n        \"permissions\": [],\n        \"organizations\": []\n    },\n    {\n        \"id\": 22,\n        \"name\": \"role_2\",\n        \"friendlyName\": \"Second role\",\n        \"type\": null,\n        \"permissions\": [],\n        \"organizations\": []\n    }\n]"}],"_postman_id":"3f477814-7fe5-4905-baf0-b1f8719a9159"},{"name":"Permissions","id":"a8dbbde7-8384-47f9-8bbf-72193b3a9be8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/permissions","description":"<p>Use this endpoint to retrieve a list of permissions available within your tenant.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","users","permissions"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0a4710d9-c0ab-4806-973e-9e2015416ad6","name":"Permissions","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/permissions"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 23,\n        \"name\": \"no_access_to_any_hq\",\n        \"friendlyName\": \"No access to any HQ\",\n        \"type\": null\n    }\n]"}],"_postman_id":"a8dbbde7-8384-47f9-8bbf-72193b3a9be8"},{"name":"Child tenants","id":"05662e57-6e07-4715-a97f-17db3681811e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/children-with-parent","description":"<p>Use this endpoint to unfold a list of tenants hierarchy within your organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","children-with-parent"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"c0d734bf-2e99-4230-9208-5e44ff8a799d","name":"Child tenants","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/children-with-parent"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"[\n{\n        \"tenant_identifier\": \"<TENANT_ID>\",\n        \"tenantname\": \"Organization Name 1\",\n        \"parent_identifier\": \"<PARENT_TENANT_ID>\"\n    },\n    {\n        \"tenant_identifier\": \"<TENANT_ID>\",\n        \"tenantname\": \"Organization Name 2\",\n        \"parent_identifier\": \"<PARENT_TENANT_ID>\"\n    }\n]"}],"_postman_id":"05662e57-6e07-4715-a97f-17db3681811e"},{"name":"Organization user info","id":"40904c42-2d41-4763-a81f-76dbaeb9b475","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/<USER_ID>","description":"<p>Use this endpoint to get detailed information about a user of an organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","users","<USER_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"66440625-5003-43a9-84cd-e96fe9b46752","name":"Organization user info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/users/<USER_ID>","description":"Use this endpoint to get detailed information about a user of an organization."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"user\": {\n        \"acceptDocumentsDaysLeft\": 1,\n        \"allowCreatingTrial\": false,\n        \"allowEditAdminPanel\": false,\n        \"auth_source\": \"<AUTH_SOURCE>\",\n        \"avatar\": \"<AVATAR>\",\n        \"business_phone\": \"<BUSINESS_PHONE>\",\n        \"createdAfterDocumentsDeadline\": false,\n        \"credits\": 1,\n        \"customerSupportEmail\": \"<EMAIL>\",\n        \"customerType\": \"<CUSTOMER_TYPE>\",\n        \"deleted_at\": \"2026-01-01T12:00:00+01:00\",\n        \"demoTenant\": false,\n        \"demo_days\": 1,\n        \"email\": \"<EMAIL>\",\n        \"featureFlags\": [],\n        \"firstname\": \"<FIRSTNAME>\",\n        \"full_name\": \"<FULL_NAME>\",\n        \"hasDocumentsToAccept\": false,\n        \"have_network\": false,\n        \"have_payment\": false,\n        \"id\": 1,\n        \"identifier\": \"<IDENTIFIER>\",\n        \"isFirstTenant\": false,\n        \"isLegalDocsActive\": false,\n        \"isXelonChild\": false,\n        \"is_sso_bypass_user\": false,\n        \"is_sso_session\": false,\n        \"job_title\": \"<JOB_TITLE>\",\n        \"onboarding_completed\": false,\n        \"paidTenant\": false,\n        \"passwordShouldBeChanged\": false,\n        \"permissions\": [],\n        \"phone\": \"<PHONE>\",\n        \"roleNames\": [],\n        \"settings\": {\n            \"darkMode\": false,\n            \"timezone\": \"<TIMEZONE>\"\n        },\n        \"social_identities\": [],\n        \"sso_group_bundles\": [],\n        \"surname\": \"<SURNAME>\",\n        \"tenant\": {\n            \"active\": false,\n            \"address\": \"<ADDRESS>\",\n            \"address2\": \"<ADDRESS2>\",\n            \"allow_bank_transfer\": false,\n            \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n            \"city\": \"<CITY>\",\n            \"country\": \"<COUNTRY>\",\n            \"customer_id\": 1,\n            \"customer_type\": \"<CUSTOMER_TYPE>\",\n            \"financeemail\": [],\n            \"fixed_recurring\": 1,\n            \"otp_type\": \"<OTP_TYPE>\",\n            \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n            \"phone\": \"<PHONE>\",\n            \"postcode\": \"<POSTCODE>\",\n            \"status\": 1,\n            \"supportemail\": \"<EMAIL>\",\n            \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n            \"tenantname\": \"<TENANTNAME>\",\n            \"type\": 1,\n            \"vat\": 1\n        },\n        \"tenantIdentifier\": \"<TENANT_IDENTIFIER>\",\n        \"tenantName\": \"<TENANT_NAME>\",\n        \"tenantType\": 1,\n        \"tenant_sso_enabled\": false,\n        \"upgradeModalActive\": false,\n        \"country_code\": \"<COUNTRY_CODE>\"\n    }\n}"}],"_postman_id":"40904c42-2d41-4763-a81f-76dbaeb9b475"}],"id":"4c0ea1cb-f609-4522-bb74-912899dca67b","description":"<p>Each user has its own <code>id</code> by which it can be managed. Learn more about user management <a href=\"https://www.xelon.ch/docs/user-management\">here</a>.</p>\n<h3 id=\"user-roles\">User Roles</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>hq_organization_admin</code></td>\n<td>You can see the whole list of permissions in the <code>GET</code> <strong>Roles and permissions</strong> endpoint below.</td>\n</tr>\n<tr>\n<td><code>no_access_to_any_hq</code></td>\n<td>This account won't have access to any organization, except the one assigned to them.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"user-job-titles\">User Job Titles</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>job_title</code></strong></th>\n<th><strong>Title</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ceo</code></td>\n<td>CEO</td>\n</tr>\n<tr>\n<td><code>cto</code></td>\n<td>CTO</td>\n</tr>\n<tr>\n<td><code>ciso_compliance</code></td>\n<td>CISO / Compliance</td>\n</tr>\n<tr>\n<td><code>sysadmin_devops</code></td>\n<td>SysAdmin / DevOps</td>\n</tr>\n<tr>\n<td><code>developer</code></td>\n<td>Developer</td>\n</tr>\n<tr>\n<td><code>finance</code></td>\n<td>Finance</td>\n</tr>\n<tr>\n<td><code>other</code></td>\n<td>Other</td>\n</tr>\n</tbody>\n</table>\n</div>","event":[{"listen":"prerequest","script":{"id":"474c9439-82c7-4f9a-8c7a-85565e27885c","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8f39e595-330b-4eaf-b62b-41f7558ac11e","type":"text/javascript","exec":[""]}}],"_postman_id":"4c0ea1cb-f609-4522-bb74-912899dca67b","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Devices and Servers","item":[{"name":"Device and Server Actions","item":[{"name":"Device's web console","id":"20c37e55-bdaf-4382-b629-27d150ea39b0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/console","description":"<p>Retrieves an HTML web console of a specific device.</p>\n<blockquote>\n<p>You can not use this API call on powered off devices.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","console"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"46a1b2c5-0fec-4e16-acac-088e9b86fba6","name":"Device's web console","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/console"},"status":"OK","code":200,"_postman_previewlanguage":"html","header":[{"key":"Date","value":"Thu, 17 Mar 2022 14:26:49 GMT"},{"key":"Content-Type","value":"text/html; charset=UTF-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=jap3vPPAs1eMQfI%2FfgBwN5ByxqpdVv2I1a6z3OA8XtwLLGoXGatEsIFbWkTCpAbh2P1nWadR0BRVeAXkEeCVBiY02d79lM0TGG%2FN%2FlyXo04QZxaUVH075KFqp52Q%2Bw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed667517c6d38bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"<!DOCTYPE html PUBLIC\"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n    <head>\n        <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />\n        <title>Console</title>\n        <link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css\" integrity=\"sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u\" crossorigin=\"anonymous\">\n        <link href=\"//cdnjs.cloudflare.com/ajax/libs/x-editable/1.5.0/bootstrap3-editable/css/bootstrap-editable.css\" rel=\"stylesheet\" />\n    </head>\n    <body>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"https://vdc.xelon.ch/vendor/vmsdk/css/wmks-all.css\" />\n        <script type=\"text/javascript\" src=\"https://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.3/jquery.js\"></script>\n        <script type=\"text/javascript\" src=\"https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js\"></script>\n        <script type=\"text/javascript\" src=\"https://vdc.xelon.ch/vendor/vmsdk/wmks.min.js\"></script>\n        <a href=\"javascript:void(wmks.sendKeyCodes([17,18,46]))\" class=\"btn btn-info\" role=\"button\">Send Ctrl+Alt+Del</a>\n        <a onClick=\"goFullScreen()\" href=\"#\" class=\"btn btn-info\" role=\"button\">Full Screen</a>\nKeyboard:\n        <select class=\"btn btn-info\" onClick=\"changeLanguage()\" id=\"selectLanguage\">\n            <option selected value=\"de-CH\">Swiss-German</option>\n            <option value=\"en-US\">English</option>\n        </select>\n        <div id=\"wmksContainer\" style=\"position:absolute;width:100%;height:100%\"></div>\n        <script>\n        function changeLanguage() {\n            lang = document.getElementById(\"selectLanguage\").value;\n            wmks.setOption('keyboardLayoutId',lang)\n\n        }\n\n        function goFullScreen() {\n            wmks.enterFullScreen();\n            wmks.setRemoteScreenSize(screen.height, screen.height);\n            wmks.updateScreen();\n        }\n        function disconnect() {\n            wmks.disconnect();\n            wmks.destroy();\n        }\n\n\n    </script>\n        <script>\n        var wmks = WMKS.createWMKS(\"wmksContainer\",\n            {\n\n\n            }) .register(WMKS.CONST.Events.CONNECTION_STATE_CHANGE, function(event,data){ if(data.state == WMKS.CONST.ConnectionState.CONNECTED) { console.log(\"connection state change : connected\"); } }); wmks.connect(\"wss://cpconsole.xelon.ch:443/1/05/ticket/e606fe6e3b4574d9\");\n\n        wmks.setOption('keyboardLayoutId','de-CH')\n        wmks.setOption('retryConnectionInterval','2')\n    </script>\n    </body>\n</html>"}],"_postman_id":"20c37e55-bdaf-4382-b629-27d150ea39b0"},{"name":"Get list of devices","id":"bf11f3a2-c104-4284-8bbf-7d7d31631c5f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/devices?per_page=5&order=desc&sort_by=created_at&page=1&search=Postman_test_Nik","description":"<p>Retrieves a list of devices that can be sorted, displayed, and ordered in multiple ways.</p>\n<blockquote>\n<p>Replicated devices have a <code>service_id</code> that equals <code>9</code>, while other devices have a <code>1</code> value.</p>\n</blockquote>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>localvmid</code></td>\n<td>An ID of a related device.</td>\n</tr>\n<tr>\n<td><code>state</code></td>\n<td><code>1</code> for enabled and <code>0</code> for disabled.</td>\n</tr>\n<tr>\n<td><code>hv_system_id</code></td>\n<td>ID of a cloud you're using. See <code>GET</code>  <br /><strong>List of organization's clouds</strong> endpoint for more info.</td>\n</tr>\n<tr>\n<td><code>user_id</code></td>\n<td>ID of a user who created the device.</td>\n</tr>\n<tr>\n<td><code>power_state</code></td>\n<td>Can be either <code>poweredOn</code> of <code>poweredOff</code>.</td>\n</tr>\n<tr>\n<td><code>monitoring</code></td>\n<td><code>1</code> for enabled and <code>0</code> for disabled.</td>\n</tr>\n<tr>\n<td><code>vdc_service_type</code></td>\n<td>Public Cloud = <code>1</code>;  <br />Private Cloud = <code>2</code>;  <br />K8s node = <code>3</code>;  <br />Rancher = <code>4</code>;  <br />Load Balancer = <code>5</code>;  <br />Gateway = <code>6</code>;  <br />Managed Service = <code>7</code>;  <br />Firewall = <code>8</code>;  <br />Device's Replica = <code>9</code>;  <br />Web Application Firewall = <code>10</code>;  <br />K8s Master Node = 11;</td>\n</tr>\n<tr>\n<td><code>backup_status</code></td>\n<td>Can be either <code>true</code> or <code>false</code> depending on whether the Backup Monitoring is enabled.</td>\n</tr>\n<tr>\n<td><code>failure_reason</code></td>\n<td>Reason why the device provisioning failed (e.g., the device creation or the guest OS initial setup failed). <code>null</code> if no failure occurred.</td>\n</tr>\n<tr>\n<td><code>search</code></td>\n<td>Search string to filter the devices list.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","devices"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Number of devices displayed per page and per response. Can be 5, 10, 25.</p>\n","type":"text/plain"},"key":"per_page","value":"5"},{"description":{"content":"<p>Descending created date order. Put 'asc' for ascending.</p>\n","type":"text/plain"},"key":"order","value":"desc"},{"description":{"content":"<p>A parameter to sort devices by. Can be 'created_at', 'vmdisplayname', and 'power_state'.</p>\n","type":"text/plain"},"key":"sort_by","value":"created_at"},{"description":{"content":"<p>A number of the page you want to get listed.</p>\n","type":"text/plain"},"key":"page","value":"1"},{"key":"search","value":"Postman_test_Nik"}],"variable":[]}},"response":[{"id":"f5eb711f-ed5c-440c-a1dc-09f96d15e518","name":"Get list of devices","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://vdc.xelon.ch/api/service/<TENANT_ID>/devices?per_page=5&order=desc&sort_by=created_at&page=1","host":["https://vdc.xelon.ch"],"path":["api","service","<TENANT_ID>","devices"],"query":[{"key":"per_page","value":"5","description":"Number of devices displayed per page and per response. Can be 5, 10, 25."},{"key":"order","value":"desc","description":"Descending created date order. Put 'asc' for ascending."},{"key":"sort_by","value":"created_at","description":"A parameter to sort devices by. Can be 'created_at', 'vmdisplayname', and 'power_state'."},{"key":"page","value":"1","description":"A number of the page you want to get displayed."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:59:23 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=sH3whyCH%2FlNcpGV2dx8FJYJZR9l9BTadWOkxnkQAe5h3ydWYTQiR%2BCNOR72T0DUezh%2FxNFXA6A7k82YkyS8ibH5ZlnOORvAe%2FXNgqScmOcENkCohJGoWaiLnkBOUgw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6ef74f86778a3-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"current_page\": 1,\n    \"data\": [\n        {\n            \"localvmid\": \"<VM_ID>\",\n            \"created_at\": \"2022-03-17T16:50:13+01:00\",\n            \"vmdisplayname\": \"Device Display Name\",\n            \"vmhostname\": \"device-hostname\",\n            \"state\": 1,\n            \"hv_system_id\": 1,\n            \"backup_status\": false,\n            \"power_state\": \"poweredOn\",\n            \"memory\": 1,\n            \"cpu\": 1,\n            \"hv_type\": \"public\",\n            \"template\": {\n                \"id\": 110,\n                \"category\": \"Server\",\n                \"type\": \"Linux\",\n                \"hv_system\": null,\n                \"hv_type\": null,\n                \"instructions\": null\n            },\n            \"tenant\": {\n                \"tenantname\": \"Organization Name\",\n                \"tenant_identifier\": \"<TENANT_ID>\",\n                \"parent_identifier\": \"<PARENT_IDENTIFIER>\"\n            },\n            \"active_replications\": [],\n            \"deleted_at\": null,\n            \"failure_reason\": null,\n            \"hasReplication\": false,\n            \"hv_system\": {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"display_name\": \"<DISPLAY_NAME>\",\n                \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n                \"hv_type\": \"<HV_TYPE>\",\n                \"id\": 1,\n                \"identifier\": \"<IDENTIFIER>\",\n                \"main_cloud\": 1,\n                \"type\": 1,\n                \"version\": 1\n            },\n            \"is_restoring\": null,\n            \"iso_mounted\": null,\n            \"monitoring\": 1,\n            \"notes\": null,\n            \"service_cluster_type\": null,\n            \"service_id\": null,\n            \"serviceuser_lastchecked\": null,\n            \"serviceuser_status\": 1,\n            \"template_id\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"user_id\": 1,\n            \"vdc_service_type\": 1\n        }\n    ],\n    \"first_page_url\": \"https://hq.xelon.ch/api/service/<TENANT_ID>/devices?page=1\",\n    \"from\": 1,\n    \"last_page\": 3,\n    \"last_page_url\": \"https://hq.xelon.ch/api/service/<TENANT_ID>/devices?page=3\",\n    \"links\": [\n        {\n            \"url\": null,\n            \"label\": \"&laquo; Previous\",\n            \"active\": false,\n            \"page\": 1\n        },\n        {\n            \"url\": \"https://hq.xelon.ch/api/service/<TENANT_ID>/devices?page=1\",\n            \"label\": \"1\",\n            \"active\": true\n        },\n        {\n            \"url\": \"https://hq.xelon.ch/api/service/<TENANT_ID>/devices?page=2\",\n            \"label\": \"2\",\n            \"active\": false\n        },\n        {\n            \"url\": \"https://hq.xelon.ch/api/service/<TENANT_ID>/devices?page=3\",\n            \"label\": \"3\",\n            \"active\": false\n        },\n        {\n            \"url\": \"https://hq.xelon.ch/api/service/<TENANT_ID>/devices?page=2\",\n            \"label\": \"Next &raquo;\",\n            \"active\": false\n        }\n    ],\n    \"next_page_url\": \"https://hq.xelon.ch/api/service/<TENANT_ID>/devices?page=2\",\n    \"path\": \"https://hq.xelon.ch/api/service/<TENANT_ID>/devices\",\n    \"per_page\": 5,\n    \"prev_page_url\": null,\n    \"to\": 5,\n    \"total\": 10\n}"}],"_postman_id":"bf11f3a2-c104-4284-8bbf-7d7d31631c5f"},{"name":"Device template creation info","id":"e4e78b2c-c915-4dc7-b6db-f8d00b4cc085","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/create/Server/<SERVER>/<NUMBER>","description":"<p>This endpoint retrieves a list of available templates, NICs, and scripts when creating a new device.</p>\n<h2 id=\"how-to-make-this-api-request\">How to make this API request</h2>\n<p>The request itself consists of three variables: <strong>TENANT_ID</strong>, <strong>SERVER</strong>, and <strong>NUMBER</strong>. See the explanation in the table below.</p>\n<p><strong>Request scheme:</strong></p>\n<p><code>https://hq.xelon.ch/api/service/TENANT_ID/vmlist/create/Server/SERVER/NUMBER</code></p>\n<p><strong>Example:</strong></p>\n<p><a href=\"https://hq.xelon.ch/api/service/2sn54783n/vmlist/create/Server/Linux/7\"><code>https://hq.xelon.ch/api/service/2sn54783n/vmlist/create/Server/Linux/7</code></a> - corresponds to a <strong>Debian 9 64 bit EN</strong> device.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>NUMBER</code></th>\n<th><code>SERVER</code></th>\n<th><strong>OS</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>7</code></td>\n<td><code>Linux</code></td>\n<td>Debian 9 64 bit EN</td>\n</tr>\n<tr>\n<td><code>110</code></td>\n<td><code>Linux</code></td>\n<td>Ubuntu 18.04 LTS 64 bit EN</td>\n</tr>\n<tr>\n<td><code>207</code></td>\n<td><code>Linux</code></td>\n<td>Ubuntu 20.04 64 bit EN</td>\n</tr>\n<tr>\n<td><code>10148</code></td>\n<td><code>Linux</code></td>\n<td>AlmaLinux 8 64 bit EN</td>\n</tr>\n<tr>\n<td><code>10156</code></td>\n<td><code>Linux</code></td>\n<td>Debian 11 64 bit EN</td>\n</tr>\n<tr>\n<td><code>10157</code></td>\n<td><code>Linux</code></td>\n<td>Debian 10 64 bit EN</td>\n</tr>\n<tr>\n<td><code>10158</code></td>\n<td><code>Linux</code></td>\n<td>CentOS 7 64 bit EN</td>\n</tr>\n<tr>\n<td><code>75</code></td>\n<td><code>Windows</code></td>\n<td>Windows Server 2019 EN Std</td>\n</tr>\n<tr>\n<td><code>1</code></td>\n<td><code>Windows</code></td>\n<td>Windows Server 2016 EN Std</td>\n</tr>\n<tr>\n<td><code>10147</code></td>\n<td><code>Windows</code></td>\n<td>Windows Server 2022 EN Std</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>Template ID.</td>\n</tr>\n<tr>\n<td><code>hddunit</code></td>\n<td>Sequence number of a disk used for HDD.</td>\n</tr>\n<tr>\n<td><code>networks</code></td>\n<td>An array of all networks available within a specific organization.</td>\n</tr>\n<tr>\n<td><code>wannetwork_count</code></td>\n<td>A number of available WAN networks.</td>\n</tr>\n<tr>\n<td><code>lannetwork_count</code></td>\n<td>A number of available LAN networks.</td>\n</tr>\n<tr>\n<td><code>tenantidentifier</code></td>\n<td>An ID of a related organization.</td>\n</tr>\n<tr>\n<td><code>subnets</code></td>\n<td>An array which displays the related subnets (if available). Format: <code>[\"/24\", \"/35\", \"/29\"]</code>.</td>\n</tr>\n<tr>\n<td><code>templatetype</code></td>\n<td>Type of a template. Can be either <code>Windows</code>, <code>Linux</code>, <code>Sophos</code>, <code>pfSense</code>, <code>SonicWALL</code>, <code>Barracuda</code>, <code>ISO</code>, <code>Custom</code>, <code>FortiGate</code>.</td>\n</tr>\n<tr>\n<td><code>allowed_setpwd</code></td>\n<td>Indicates a permission to set password. Can be either <code>1</code> for allowed and <code>0</code> for not allowed.</td>\n</tr>\n<tr>\n<td><code>allowed_setdisk</code></td>\n<td>Disk configuration permission, can be either <code>1</code> or <code>0</code>. If not <code>1</code>, confg will be empty.</td>\n</tr>\n<tr>\n<td><code>has_serviceuser</code></td>\n<td>Indicates whether the deivce has a service user. Can be either <code>1</code> or <code>0</code>.</td>\n</tr>\n<tr>\n<td><code>category</code></td>\n<td>Template category. Can be either <code>Custom</code>, <code>Server</code>, <code>Firewall</code>, or <code>Generic</code>.</td>\n</tr>\n<tr>\n<td><code>nic_unit_min</code></td>\n<td>Minimum amount of NIC's that can be attached to the device.</td>\n</tr>\n<tr>\n<td><code>nic_unit_max</code></td>\n<td>Maximum amount of NIC's that can be attached to the device.</td>\n</tr>\n<tr>\n<td><code>hv_type</code></td>\n<td>Cloud type, can be either <code>private</code> or <code>public</code>. See <code>GET</code>  <br /><strong>List of organization's clouds</strong> for more info.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","vmlist","create","Server","<SERVER>","<NUMBER>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"39c90ada-d27b-4117-b945-e62ea050d7fc","name":"Device template creation info","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/create/Server/Windows/<TEMPLATE_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 14:51:00 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=fcZ7kWpJgC%2BZRXuKiHb4Woib5Q7rNsl8pzYXHiHNeace%2BZpogxC7sMXx%2BMg2%2BVssAiQsv5cCz%2B9LQhZ6IX1K4TPHDFLXTSM6sL6BwSNAnq7aiyYBV%2B5M%2F3Ld3uCCMQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed68b49bfd07813-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"template\": {\n        \"id\": 75,\n        \"created_at\": \"2022-03-17T15:51:00+01:00\",\n        \"name\": \"Template Name\",\n        \"description\": \"\",\n        \"active\": 1,\n        \"status\": 1,\n        \"templatetype\": 1,\n        \"scripttype\": \"Powershell\",\n        \"nic_count_min\": 1,\n        \"nic_count_max\": 5,\n        \"hdd_minsize_gb\": 32,\n        \"has_swap\": 0,\n        \"allowed_setpwd\": 1,\n        \"allowed_setdisk\": 1,\n        \"allowed_update_ip_guest\": 0,\n        \"allowed_resize_existing_partition\": 1,\n        \"has_serviceuser\": 1,\n        \"type\": \"Windows\",\n        \"category\": \"Server\",\n        \"hv_type\": \"public\",\n        \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n        \"deleted_at\": null,\n        \"hddunit\": 1,\n        \"hv_system\": {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"display_name\": \"<DISPLAY_NAME>\",\n            \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"main_cloud\": 1,\n            \"type\": 1,\n            \"version\": 1\n        },\n        \"identifier\": \"<IDENTIFIER>\",\n        \"instructions\": null,\n        \"internal_version\": \"<INTERNAL_VERSION>\",\n        \"nicdescr\": null,\n        \"nicunit\": 1,\n        \"power_on\": false,\n        \"reg_exp_id\": null,\n        \"swapunit\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"vmdk_id\": \"<VMDK_ID>\",\n        \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n    },\n    \"nics\": [\n        {\n            \"networks\": [\n                {\n                    \"value\": 123,\n                    \"name\": \"Network Name\",\n                    \"type\": \"LAN\"\n                }\n            ],\n            \"ips\": {\n                \"123\": [\n                    {\n                        \"value\": 123,\n                        \"text\": \"1.2.3.4\"\n                    }\n                ]\n            },\n            \"niccontrollerkey1\": 1,\n            \"nickey1\": 1,\n            \"nicname\": \"<NICNAME>\",\n            \"nicnumber\": 1,\n            \"nicunit1\": 1\n        }\n    ],\n    \"scripts\": [\n        {\n            \"scriptid\": 999,\n            \"scriptname\": \"Script Name\"\n        }\n    ]\n}"}],"_postman_id":"e4e78b2c-c915-4dc7-b6db-f8d00b4cc085"},{"name":"Create device","id":"a42bd464-5059-4cfb-bd37-82bb141fa9ab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"backupId\": 1,\n    \"cloudId\": 1,\n    \"cpucores\": 1,\n    \"disksize\": 32,\n    \"displayname\": \"Device's Display Name\",\n    \"hostname\": \"device-host-name\",\n    \"memory\": 1,\n    \"monitoring\": false,\n    \"password\": \"<PASSWORD>\",\n    \"password_confirmation\": \"<PASSWORD>\",\n    \"scriptid\": null,\n    \"sendEmail\": false,\n    \"swapdisksize\": 1,\n    \"template\": 1,\n    \"tenant_identifier\": \"<TENANT_ID>\",\n    \"ip1\": \"<IP1>\",\n    \"connectOnPowerOn1\": true,\n    \"hostnameVMname\": true,\n    \"networkid1\": \"<NETWORKID1>\",\n    \"niccontrollerkey1\": 100,\n    \"nickey1\": 4000,\n    \"nicnumber\": 1,\n    \"nicunit1\": 7,\n    \"cpuHotAdd\": false,\n    \"ramHotAdd\": false,\n    \"isoid\": \"<ISO_ID>\",\n    \"cloudInit\": {\n        \"userData\": \"<CLOUD_INIT_USER_DATA>\"\n    },\n    \"customscript_params\": \"<CUSTOMSCRIPT_PARAMS>\",\n    \"replicationId\": \"<REPLICATION_ID>\",\n    \"sshKeyId\": \"<SSH_KEY_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/create","description":"<p>An essential endpoint for creating a new device. <a href=\"https://www.xelon.ch/docs/create-a-windows-or-linux-server\">Check user guide</a> for more details about this process.</p>\n<p>To create a device, you send its configuration as a JSON body request.</p>\n<h3 id=\"request-fields\">Request Fields</h3>\n<blockquote>\n<p>You need to either manually specify IP address as a string, i.e. \"196.16.55.12\", using the <code>\"ip1\"</code> field or send your IP's ID within the <code>\"ipaddr1\"</code> parameter.</p>\n</blockquote>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>backupId</code></td>\n<td><em>integer</em></td>\n<td>Specific backup frequency. See the <strong>Backups</strong> folder for more info.</td>\n</tr>\n<tr>\n<td><code>cloudId</code></td>\n<td><em>integer</em></td>\n<td>Your cloud ID. See <code>GET</code>  <br /><strong>List of organization's clouds</strong> for more info.</td>\n</tr>\n<tr>\n<td><code>cpucores</code></td>\n<td><em>integer</em></td>\n<td>Number of CPU cores. Min: 1; Max: 12.</td>\n</tr>\n<tr>\n<td><code>disksize</code></td>\n<td><em>integer</em></td>\n<td>Number of disk size gigabytes. Min: 32; Max: 2048.</td>\n</tr>\n<tr>\n<td><code>displayname</code></td>\n<td><em>string</em></td>\n<td>Display name of your device.</td>\n</tr>\n<tr>\n<td><code>hostname</code></td>\n<td><em>string</em></td>\n<td>Host name of your device.</td>\n</tr>\n<tr>\n<td><code>memory</code></td>\n<td><em>integer</em></td>\n<td>Amount of RAM GB. Min: 1; Max: 64</td>\n</tr>\n<tr>\n<td><code>monitoring</code></td>\n<td><em>boolean</em></td>\n<td>Becomes <code>true</code> or <code>false</code> depending on whether the <strong>Monitoring Service</strong> toggle is switched on/off.</td>\n</tr>\n<tr>\n<td><code>password</code></td>\n<td><em>string</em></td>\n<td>Must contain uppercase and lowercase letters, numbers, and have 6 characters minimum length.</td>\n</tr>\n<tr>\n<td><code>password_confirmation</code></td>\n<td><em>string</em></td>\n<td>A confirmation/duplication of your <code>password</code> field.</td>\n</tr>\n<tr>\n<td><code>scriptid</code></td>\n<td><em>integer</em></td>\n<td>An ID of a selected script to run after a device setup (optional. For more info, see the <strong>Templates, ISOs, and Scripts</strong> folder.</td>\n</tr>\n<tr>\n<td><code>sendEmail</code></td>\n<td><em>boolean</em></td>\n<td>If <code>true</code>, will email a user when provisioning has been completed</td>\n</tr>\n<tr>\n<td><code>swapdisksize</code></td>\n<td><em>integer</em></td>\n<td>Size of a SWAP disk, GB. Min: 1; Max: 20.</td>\n</tr>\n<tr>\n<td><code>template</code></td>\n<td><em>integer</em></td>\n<td>Selected OS. Explore the <strong>Device template creation info</strong> endpoint above for more details.</td>\n</tr>\n<tr>\n<td><code>tenant_identifier</code></td>\n<td><em>string</em></td>\n<td>ID of your organization.</td>\n</tr>\n<tr>\n<td><code>hostnameVMname</code></td>\n<td>Hostname of the new device.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>nicnumber</code></td>\n<td>Number of network interfaces of the new device. Each interface <code>n</code> is described by <code>networkid{n}</code>, <code>ip{n}</code>, <code>nicunit{n}</code>, <code>nickey{n}</code>, <code>niccontrollerkey{n}</code> and <code>connectOnPowerOn{n}</code>.</td>\n<td><em>integer</em></td>\n</tr>\n</tbody>\n</table>\n</div><p>Within a <code>200</code> response, endpoint displays a created device's info listed below.</p>\n<h3 id=\"response-fields\">Response Fields</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>localvmid</code></td>\n<td><em>integer</em></td>\n<td>An ID of your device.</td>\n</tr>\n<tr>\n<td><code>vmdisplayname</code></td>\n<td><em>string</em></td>\n<td>A name of your device which will be displayed within the interface.</td>\n</tr>\n<tr>\n<td><code>monitoring</code></td>\n<td><em>boolean</em></td>\n<td>If <code>true</code>, the Monitoring Service is enabled.</td>\n</tr>\n<tr>\n<td><code>ips</code></td>\n<td><em>array</em></td>\n<td>An array of the network's IP addresses linked to this device.</td>\n</tr>\n<tr>\n<td><code>state</code></td>\n<td><em>integer</em></td>\n<td><code>1</code> – provisioning finished, the device is ready; <code>0</code> – provisioning in progress or failed</td>\n</tr>\n<tr>\n<td><code>hv_system_id</code></td>\n<td><em>integer</em></td>\n<td>Cloud ID (learn more in a <strong>Get list of organization's clouds</strong> endpoint)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","create"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"804eb784-89d8-42ef-8143-1c2060f1871d","name":"Create device","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"backupId\": 1,\n\t\"cloudId\": 1,\n\t\"cpucores\": 1,\n\t\"disksize\": 32,\n\t\"displayname\": \"test\",\n\t\"hostname\": \"test\",\n\t\"ip1\": \"196.16.55.12\",\n\t\"memory\": 1,\n\t\"monitoring\": false,\n\t\"networkid1\": 35,\n\t\"niccontrollerkey1\": 100,\n\t\"nickey1\": 4000,\n\t\"nicnumber\": 1,\n\t\"nicunit1\": 7,\n\t\"password\": \"q3nR5E3;zP\",\n\t\"password_confirmation\": \"q3nR5E3;zP\",\n\t\"scriptid\": null,\n\t\"sendEmail\": false,\n\t\"swapdisksize\": 1,\n\t\"template\": 1,\n\t\"tenant_identifier\": \"75c7cf02b782\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/create"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 14:52:34 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=04biJI7w8df873JS8U55OVeyN980imdluKKPGTNM5Y80jBVqfBv9uOENVS2qWHMOe3nl%2BTKG3JfpO3hhA3dAhBo9fka%2B1vIKm2H0yUqRZ34DM6ucVjtu1h%2B%2BAYI3%2Bg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed68d98fcb17813-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"device\": {\n        \"localvmid\": \"{{LOCALVMID}}\",\n        \"hv_system_id\": 1,\n        \"template_id\": 1,\n        \"state\": 0,\n        \"vmdisplayname\": \"Device Display Name\",\n        \"iso_mounted\": null,\n        \"vmhostname\": \"Device Host Name\",\n        \"created_at\": \"2022-03-17T15:52:34+01:00\",\n        \"monitoring\": false,\n        \"hv_type\": \"public\",\n        \"hv_system\": {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"display_name\": \"<DISPLAY_NAME>\",\n            \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"main_cloud\": 1,\n            \"type\": 1,\n            \"version\": 1\n        },\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"user_id\": 1,\n        \"vdc_service_type\": 1\n    },\n    \"ips\": [\n        \"1.2.3.4\"\n    ]\n}"}],"_postman_id":"a42bd464-5059-4cfb-bd37-82bb141fa9ab"},{"name":"Get device info","id":"88382326-3609-4ce7-aaf9-3e649396b5c4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/device?tenant=<TENANT_ID>&localvmid=<VM_ID>","description":"<p>Retrieves a general info on a specific device, such as:</p>\n<ul>\n<li><p>Running tools - <code>toolsStatus</code></p>\n</li>\n<li><p>CPU usage - <code>currentcpuusage</code></p>\n</li>\n<li><p>Device health - <code>systemstatus</code></p>\n</li>\n<li><p>Storage - <code>storage</code></p>\n<ul>\n<li><code>id -</code> retrieves unique storage ID for this VM</li>\n</ul>\n</li>\n<li><p>Networks - <code>networks</code></p>\n</li>\n<li><p>General configuration info (including ISOs (<code>device_isos</code>), Templates, and Backups) - <code>localvmdetails</code></p>\n</li>\n</ul>\n<p>Response body</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>toolsStatus.toolsStatus</code></td>\n<td><em>boolean</em></td>\n<td><code>true</code> if there are VMWare tools installed; otherwise - <code>false</code>.</td>\n</tr>\n<tr>\n<td><code>device.uptime</code></td>\n<td><em>integer</em></td>\n<td>Number of hours gone since the last powering on.</td>\n</tr>\n<tr>\n<td><code>localvmdetails.category</code></td>\n<td><em>string</em></td>\n<td>Template category, can be either <code>Custom</code>, <code>Server</code>, <code>Firewall</code>, or <code>Generic</code>.</td>\n</tr>\n<tr>\n<td><code>vmautoshutdown</code></td>\n<td></td>\n<td>A schedule for automatic enabling/disabling for the device.</td>\n</tr>\n<tr>\n<td><code>ipdetails.switch_id</code></td>\n<td><em>integer</em></td>\n<td>A switch where the Network is located.</td>\n</tr>\n<tr>\n<td><code>ipdetails.network_speed</code></td>\n<td><em>integer</em></td>\n<td>Network speed. Can be either 250, 500, 1000, or 10000.</td>\n</tr>\n<tr>\n<td><code>ipdetails.vdcmanaged</code></td>\n<td><em>integer</em></td>\n<td>If <code>1</code>, allows to manage the network through VDC. If <code>0</code> – doesn't.</td>\n</tr>\n<tr>\n<td><code>ipArray</code></td>\n<td>array</td>\n<td>An array of networks available for the specific device.</td>\n</tr>\n<tr>\n<td><code>message</code></td>\n<td><em>string</em></td>\n<td>If message has been changed, this parameter will have it inside.</td>\n</tr>\n<tr>\n<td><code>currentcpuusage</code></td>\n<td><em>integer</em></td>\n<td>A percentage of CPU used. Min: <code>0</code>; Max: <code>100</code>.</td>\n</tr>\n<tr>\n<td><code>labels</code></td>\n<td>array</td>\n<td>An array with the data on all labels assigned to this device.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"labels-color-ids\"><code>labels</code> color IDs</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>labels.colorId</strong></th>\n<th><strong>Color</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>1</code></td>\n<td>Green</td>\n</tr>\n<tr>\n<td><code>2</code></td>\n<td>Orange</td>\n</tr>\n<tr>\n<td><code>3</code></td>\n<td>Red</td>\n</tr>\n<tr>\n<td><code>4</code></td>\n<td>Gray</td>\n</tr>\n<tr>\n<td><code>5</code></td>\n<td>Purple</td>\n</tr>\n<tr>\n<td><code>6</code></td>\n<td>Blue</td>\n</tr>\n<tr>\n<td><code>7</code></td>\n<td>Teal</td>\n</tr>\n<tr>\n<td><code>8</code></td>\n<td>Brown</td>\n</tr>\n<tr>\n<td><code>9</code></td>\n<td>Pink</td>\n</tr>\n<tr>\n<td><code>10</code></td>\n<td>Yellow</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","device"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>An ID of a tenant</p>\n","type":"text/plain"},"key":"tenant","value":"<TENANT_ID>"},{"description":{"content":"<p>An ID of a specific device</p>\n","type":"text/plain"},"key":"localvmid","value":"<VM_ID>"}],"variable":[]}},"response":[{"id":"71b054ad-f07a-4878-9d2d-51fc5f62453e","name":"Get device info","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://vdc.xelon.ch/api/service/device?tenant=<TENANT_ID>&localvmid=<VM_ID>","host":["https://vdc.xelon.ch"],"path":["api","service","device"],"query":[{"key":"tenant","value":"<TENANT_ID>","description":"An ID of your organization"},{"key":"localvmid","value":"<VM_ID>","description":"An ID of a specific device"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:46:39 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=eM7gU%2BXsi2J%2FTCbSb0OCWNaasBvQQrEdCno1padXz4wp8%2B%2BZfYeH%2Fs%2FtasJiE9uzRai39aVzqmQAgJuF2m8cehBqJ8TeuL0kieyuy11Y%2BCnW%2F%2BQDXPFrDnaadvNCKA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6dccd790778a3-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"device\": {\n        \"currentcpuusage\": 1,\n        \"uptime\": 1,\n        \"systemstatus\": {\n            \"color\": \"green\",\n            \"message\": null\n        },\n        \"cpu\": 1,\n        \"ram\": 1,\n        \"storage\": [\n            {\n                \"id\": \"2679-2000\",\n                \"name\": \"Hard Disk Name\",\n                \"value\": 32,\n                \"type\": \"ssd\"\n            }\n        ],\n        \"networks\": [\n            {\n                \"id\": 1234,\n                \"label\": \"Network adapter 1\",\n                \"ip\": \"1.2.3.4\",\n                \"macAddress\": \"<MAC_ADDRESS>\",\n                \"networkName\": \"Network Name\",\n                \"isConnected\": false\n            }\n        ],\n        \"powerstate\": true,\n        \"localvmdetails\": {\n            \"localvmid\": \"<VM_ID>\",\n            \"created_at\": \"2022-03-17T15:52:34+01:00\",\n            \"vmdisplayname\": \"Device Display Name\",\n            \"template_id\": 1,\n            \"vmhostname\": \"device-hostname\",\n            \"state\": 1,\n            \"iso_mounted\": null,\n            \"hv_system_id\": 1,\n            \"user_id\": 123456,\n            \"monitoring\": 0,\n            \"notes\": \"<NOTES>\",\n            \"category\": \"Server\",\n            \"type\": \"Windows\",\n            \"templatetype\": 1,\n            \"tenantname\": \"Organization Name\",\n            \"hv_type\": \"public\",\n            \"ssh_keys\": [],\n            \"user\": {\n                \"id\": 123456,\n                \"name\": \"John\",\n                \"surname\": \"Doe\",\n                \"email\": \"johndoe@example.com\",\n                \"tenant\": {\n                    \"tenant_identifier\": \"<TENANT_ID>\",\n                    \"account_manager\": 1,\n                    \"active\": false,\n                    \"address\": \"<ADDRESS>\",\n                    \"address2\": \"<ADDRESS2>\",\n                    \"allow_bank_transfer\": false,\n                    \"allow_trial_creation\": false,\n                    \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n                    \"billingplan\": 1,\n                    \"city\": \"<CITY>\",\n                    \"country\": \"<COUNTRY>\",\n                    \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                    \"credits_code_id\": null,\n                    \"currency_id\": null,\n                    \"customer_id\": 1,\n                    \"customer_support_email\": \"<EMAIL>\",\n                    \"customer_type\": \"<CUSTOMER_TYPE>\",\n                    \"deactivation_date\": null,\n                    \"deleted_at\": null,\n                    \"demo\": false,\n                    \"demo_end\": \"<DEMO_END>\",\n                    \"demo_start\": null,\n                    \"discount\": null,\n                    \"financeemail\": [],\n                    \"fixed_recurring\": 1,\n                    \"fraud_risk_score\": 1,\n                    \"hs_object_id\": null,\n                    \"invoice_type\": \"<INVOICE_TYPE>\",\n                    \"minimum_recurring\": 1,\n                    \"otp_type\": \"<OTP_TYPE>\",\n                    \"paid\": 1,\n                    \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n                    \"phone\": \"<PHONE>\",\n                    \"postcode\": \"<POSTCODE>\",\n                    \"report_frequency\": \"<REPORT_FREQUENCY>\",\n                    \"requested\": 1,\n                    \"resource_pool\": \"<RESOURCE_POOL>\",\n                    \"status\": 1,\n                    \"supportemail\": \"<EMAIL>\",\n                    \"tax_id\": 1,\n                    \"taxed\": 1,\n                    \"tenantname\": \"<TENANTNAME>\",\n                    \"trial\": false,\n                    \"trial_end\": \"<TRIAL_END>\",\n                    \"trial_start\": \"<TRIAL_START>\",\n                    \"type\": 1,\n                    \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n                    \"upgrade_modal_active\": 1,\n                    \"withhold_invoices\": 1\n                },\n                \"auth_source\": \"<AUTH_SOURCE>\",\n                \"avatar\": \"<AVATAR>\",\n                \"business_phone\": null,\n                \"country_code\": null,\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"deleted_at\": null,\n                \"full_name\": \"<FULL_NAME>\",\n                \"graph_object_id\": null,\n                \"have_network\": false,\n                \"have_payment\": false,\n                \"hs_object_id\": null,\n                \"job_title\": null,\n                \"onboarding_completed\": false,\n                \"phone\": null,\n                \"timezone\": null,\n                \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n            },\n            \"device_isos\": {\n                \"mount\": false,\n                \"isoname\": \"ISO Name\",\n                \"iso_controller\": 123456,\n                \"iso_key\": 123456\n            },\n            \"os\": \"Microsoft Windows Server 2016 or later (64-bit)\",\n            \"sshKeys\": [],\n            \"creator\": \"User Name\",\n            \"deleted_at\": null,\n            \"diskresize_script_id\": 1,\n            \"failure_reason\": null,\n            \"has_serviceuser\": 1,\n            \"hv_system\": {},\n            \"instructions\": null,\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"is_restoring\": null,\n            \"isoid\": null,\n            \"isoname\": null,\n            \"service_cluster_type\": null,\n            \"service_id\": null,\n            \"serviceuser_lastchecked\": null,\n            \"serviceuser_script_id\": 1,\n            \"serviceuser_status\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vdc_service_type\": 1\n        },\n        \"network_chart\": {\n            \"labels\": [\n                \"Feb 30, 15:30\"\n            ],\n            \"data\": [\n                0\n            ]\n        },\n        \"cpu_chart\": {\n            \"labels\": [\n                \"Feb 30, 15:30\"\n            ],\n            \"data\": [\n                72\n            ]\n        },\n        \"startup\": null,\n        \"shutdown\": null,\n        \"isos\": [\n            {\n                \"iso\": 123123123,\n                \"name\": \"Iso name\",\n                \"label\": \"Iso label\"\n            }\n        ],\n        \"tenantidentifier\": \"<TENANT_ID>\",\n        \"cpuCoresPerSocket\": 1,\n        \"cpuHotAdd\": false,\n        \"cpuHotRemove\": false,\n        \"creator\": \"<CREATOR>\",\n        \"device_isos\": {\n            \"iso_controller\": 1,\n            \"iso_key\": 1,\n            \"isoname\": \"<ISONAME>\",\n            \"mount\": false\n        },\n        \"editNic\": false,\n        \"is_set_influx_creds\": false,\n        \"os\": \"<OS>\",\n        \"ramHotAdd\": false,\n        \"sshKeys\": []\n    },\n    \"labels\": [\n        {\n            \"id\": 123,\n            \"name\": \"Label Name\",\n            \"colorId\": 6,\n            \"textColor\": \"#174EA6\",\n            \"backgroundColor\": \"#E8F0FE\",\n            \"tenantName\": \"<TENANT_NAME>\",\n            \"createdAt\": \"<TIMESTAMP>\"\n        }\n    ],\n    \"cpuHotAdd\": true,\n    \"cpuHotRemove\": false,\n    \"ramHotAdd\": false,\n    \"backupJobs\": [\n        {\n            \"hv_system\": {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"display_name\": \"<DISPLAY_NAME>\",\n                \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n                \"hv_type\": \"<HV_TYPE>\",\n                \"id\": 1,\n                \"main_cloud\": 1,\n                \"type\": 1,\n                \"version\": 1\n            },\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"job_name\": \"<JOB_NAME>\",\n            \"slug\": \"<SLUG>\",\n            \"tag\": \"<TAG>\"\n        }\n    ],\n    \"cpu_chart\": {\n        \"data\": [],\n        \"labels\": []\n    },\n    \"cpu_chartjs\": null,\n    \"currentcpuusage\": 1,\n    \"deletedAt\": null,\n    \"ipArray\": {},\n    \"ipdetails\": [\n        {\n            \"attached_at\": \"2026-01-01T12:00:00+01:00\",\n            \"broadcast\": \"<BROADCAST>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"default_gateway\": 1,\n            \"defgw\": \"<DEFGW>\",\n            \"displayname\": \"<DISPLAYNAME>\",\n            \"dns1\": \"<DNS1>\",\n            \"dns2\": \"<DNS2>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"ip\": \"<IP>\",\n            \"iptype\": 1,\n            \"is_blacklisted\": 1,\n            \"is_free\": 1,\n            \"is_locked\": null,\n            \"is_reserved_by_user\": 1,\n            \"is_stretched\": 1,\n            \"main_tenant\": \"<MAIN_TENANT>\",\n            \"netmask\": \"<NETMASK>\",\n            \"network\": \"<NETWORK>\",\n            \"network_speed\": 1,\n            \"networkid\": 1,\n            \"nicunit\": 1,\n            \"primary\": 1,\n            \"reserve_description\": null,\n            \"reserved_at\": \"2026-01-01T12:00:00+01:00\",\n            \"subnet\": \"<SUBNET>\",\n            \"type\": \"<TYPE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vdcmanaged\": 1,\n            \"vlan\": \"<VLAN>\",\n            \"vmid\": 1\n        }\n    ],\n    \"isos\": [\n        {\n            \"iso\": 1,\n            \"label\": \"<LABEL>\",\n            \"name\": \"<NAME>\"\n        }\n    ],\n    \"lastActivities\": [\n        {\n            \"event\": \"<EVENT>\",\n            \"id\": \"<ID>\",\n            \"time\": \"2026-01-01T12:00:00+01:00\",\n            \"user\": \"<USER>\"\n        }\n    ],\n    \"message\": \"<MESSAGE>\",\n    \"network_chart\": {\n        \"data\": [],\n        \"labels\": []\n    },\n    \"network_chartjs\": null,\n    \"owner\": \"<OWNER>\",\n    \"permissions\": [],\n    \"ram_chartjs\": null,\n    \"rootOnly\": null,\n    \"shutdown\": null,\n    \"startup\": null,\n    \"status\": \"<STATUS>\",\n    \"tenantidentifier\": \"<TENANTIDENTIFIER>\",\n    \"toolsStatus\": {\n        \"runningStatus\": \"<RUNNING_STATUS>\",\n        \"toolsStatus\": false,\n        \"version\": \"<VERSION>\"\n    },\n    \"vmautoshutdown\": null\n}"}],"_postman_id":"88382326-3609-4ce7-aaf9-3e649396b5c4"},{"name":"Server templates","id":"fd6d8712-de2f-4c4b-812d-4a00f4889d2a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/device/templates?cloudId=<CLOUD_ID>&tenant=<TENANT_ID>","description":"<p>This endpoint retrieves an array of all available device templates.</p>\n<h2 id=\"response-body\">Response body</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>templates_custom</code></td>\n<td>Custom templates</td>\n</tr>\n<tr>\n<td><code>templates</code></td>\n<td>Standard templates</td>\n</tr>\n<tr>\n<td><code>templates_windows</code></td>\n<td>Windows templates</td>\n</tr>\n<tr>\n<td><code>templates_linux</code></td>\n<td>Linux templates</td>\n</tr>\n<tr>\n<td><code>templates_firewalls</code></td>\n<td>Firewall templates</td>\n</tr>\n<tr>\n<td><code>templatetype</code></td>\n<td><code>1</code> for Standard, <code>2</code> for Custom Windows/Linux, <code>3</code> for other Custom templates.</td>\n</tr>\n<tr>\n<td><code>tenant</code></td>\n<td>Identifier of the organization whose templates should be listed.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","device","templates"],"host":["https://vdc.xelon.ch"],"query":[{"key":"cloudId","value":"<CLOUD_ID>"},{"disabled":true,"key":"tenant","value":"<TENANT_ID>"},{"key":"tenant","value":"<TENANT_ID>"}],"variable":[]}},"response":[{"id":"5300f3d1-eb05-455d-acc6-adbf0a931f43","name":"Server templates","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":{"raw":"https://vdc.xelon.ch/api/service/device/templates?cloudId=<CLOUD_ID>","host":["https://vdc.xelon.ch"],"path":["api","service","device","templates"],"query":[{"key":"cloudId","value":"<CLOUD_ID>"},{"key":"tenant","value":"<TENANT_ID>","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 14:30:42 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=jmNG6DZE%2BRhUCPNehicQZ%2BrarPXR0asLKrBMvoNDOuPHhzTjiKiU9ZTC661kz%2BQr6a2FsIsZltJYBaEOPlYvoEiPffPdBhbS8VjEHJsPHbG3doRwlOeYKMu3H540zA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed66d919c7238bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"templates_custom\": [\n        {\n            \"active\": 1,\n            \"allowed_resize_existing_partition\": 1,\n            \"allowed_setdisk\": 1,\n            \"allowed_setpwd\": 1,\n            \"allowed_update_ip_guest\": 1,\n            \"category\": \"<CATEGORY>\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"has_serviceuser\": 1,\n            \"has_swap\": 1,\n            \"hdd_minsize_gb\": 1,\n            \"hddunit\": 1,\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"instructions\": \"<INSTRUCTIONS>\",\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"name\": \"<NAME>\",\n            \"nic_count_max\": 1,\n            \"nic_count_min\": 1,\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp\": null,\n            \"reg_exp_id\": null,\n            \"scripttype\": \"<SCRIPTTYPE>\",\n            \"status\": 1,\n            \"swapunit\": 1,\n            \"templatetype\": 1,\n            \"type\": \"<TYPE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ],\n    \"custom_isos\": [\n        {\n            \"category\": \"<CATEGORY>\",\n            \"description\": \"<DESCRIPTION>\",\n            \"id\": 1,\n            \"iso_id\": 1,\n            \"name\": \"<NAME>\",\n            \"type\": 1\n        }\n    ],\n    \"templates\": [\n        {\n            \"id\": 123456,\n            \"created_at\": \"2022-03-17T15:30:42+01:00\",\n            \"name\": \"ISO\",\n            \"description\": \"ISO Template\",\n            \"internal_version\": \"1.0\",\n            \"active\": 1,\n            \"status\": 1,\n            \"templatetype\": 1,\n            \"scripttype\": null,\n            \"nic_count_min\": 1,\n            \"nic_count_max\": 5,\n            \"hdd_minsize_gb\": 5,\n            \"has_swap\": 0,\n            \"allowed_setpwd\": 0,\n            \"allowed_setdisk\": 1,\n            \"allowed_update_ip_guest\": 0,\n            \"allowed_resize_existing_partition\": 0,\n            \"type\": \"ISO\",\n            \"category\": \"Generic\",\n            \"hv_type\": \"public\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"deleted_at\": null,\n            \"has_serviceuser\": 1,\n            \"hddunit\": 1,\n            \"instructions\": \"<INSTRUCTIONS>\",\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp\": {},\n            \"reg_exp_id\": 1,\n            \"swapunit\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ],\n    \"templates_firewalls\": [\n        {\n            \"active\": 1,\n            \"allowed_resize_existing_partition\": 1,\n            \"allowed_setdisk\": 1,\n            \"allowed_setpwd\": 1,\n            \"allowed_update_ip_guest\": 1,\n            \"category\": \"<CATEGORY>\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"has_serviceuser\": 1,\n            \"has_swap\": 1,\n            \"hdd_minsize_gb\": 1,\n            \"hddunit\": 1,\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"instructions\": \"<INSTRUCTIONS>\",\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"name\": \"<NAME>\",\n            \"nic_count_max\": 1,\n            \"nic_count_min\": 1,\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp\": {},\n            \"reg_exp_id\": 1,\n            \"scripttype\": \"<SCRIPTTYPE>\",\n            \"status\": 1,\n            \"swapunit\": 1,\n            \"templatetype\": 1,\n            \"type\": \"<TYPE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ],\n    \"templates_linux\": [\n        {\n            \"active\": 1,\n            \"allowed_resize_existing_partition\": 1,\n            \"allowed_setdisk\": 1,\n            \"allowed_setpwd\": 1,\n            \"allowed_update_ip_guest\": 1,\n            \"category\": \"<CATEGORY>\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"has_serviceuser\": 1,\n            \"has_swap\": 1,\n            \"hdd_minsize_gb\": 1,\n            \"hddunit\": 1,\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"instructions\": \"<INSTRUCTIONS>\",\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"name\": \"<NAME>\",\n            \"nic_count_max\": 1,\n            \"nic_count_min\": 1,\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp\": {},\n            \"reg_exp_id\": 1,\n            \"scripttype\": \"<SCRIPTTYPE>\",\n            \"status\": 1,\n            \"swapunit\": 1,\n            \"templatetype\": 1,\n            \"type\": \"<TYPE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ],\n    \"templates_windows\": [\n        {\n            \"active\": 1,\n            \"allowed_resize_existing_partition\": 1,\n            \"allowed_setdisk\": 1,\n            \"allowed_setpwd\": 1,\n            \"allowed_update_ip_guest\": 1,\n            \"category\": \"<CATEGORY>\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"has_serviceuser\": 1,\n            \"has_swap\": 1,\n            \"hdd_minsize_gb\": 1,\n            \"hddunit\": 1,\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"instructions\": \"<INSTRUCTIONS>\",\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"name\": \"<NAME>\",\n            \"nic_count_max\": 1,\n            \"nic_count_min\": 1,\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp\": {},\n            \"reg_exp_id\": 1,\n            \"scripttype\": \"<SCRIPTTYPE>\",\n            \"status\": 1,\n            \"swapunit\": 1,\n            \"templatetype\": 1,\n            \"type\": \"<TYPE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ]\n}"}],"_postman_id":"fd6d8712-de2f-4c4b-812d-4a00f4889d2a"},{"name":"Device usage statistics","id":"20c40b67-3197-41f8-a3ef-7c4ee9fbfaf2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/statistics/<PERIOD>","description":"<p>Retrieves an array of device's data usage divided by <strong>CPU</strong> and <strong>Network</strong> usage. Statistics <code>PERIOD</code> can be either <code>6</code>, <code>12</code>, <code>24</code>, or <code>48</code> hours correspondingly.</p>\n<p>You can interpret this chart by correlating <code>data</code> and <code>labels</code> arrays.</p>\n<blockquote>\n<p>This endpoint works even when you haven't connected a Monitoring Service.</p>\n</blockquote>\n<p>A <code>200 OK</code> response retrieves an array of usage stats from VMware in the following format:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    cpu_chart: \n        data: [],\n        labels: [],\n        network_chart: data: [],\n        labels: []\n}\n\n</code></pre>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","statistics","<PERIOD>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0e9b6bc1-3fcd-458c-8185-69565ea702b1","name":"Device usage statistics","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/vmlist/80d63a8cbf3a/statistics/6"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|ad4e3978-19b0-4c0c-9453-eb3d52922c06|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=ad4e3978-19b0-4c0c-9453-eb3d52922c06"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Mon, 14 Feb 2022 11:56:02 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"482"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"cpu_chart\": {\n        \"data\": [\n            33,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            8,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1,\n            1\n        ],\n        \"labels\": [\n            \"Feb 14, 10:10\",\n            \"Feb 14, 10:15\",\n            \"Feb 14, 10:20\",\n            \"Feb 14, 10:25\",\n            \"Feb 14, 10:30\",\n            \"Feb 14, 10:35\",\n            \"Feb 14, 10:40\",\n            \"Feb 14, 10:45\",\n            \"Feb 14, 10:50\",\n            \"Feb 14, 10:55\",\n            \"Feb 14, 11:00\",\n            \"Feb 14, 11:05\",\n            \"Feb 14, 11:10\",\n            \"Feb 14, 11:15\",\n            \"Feb 14, 11:20\",\n            \"Feb 14, 11:25\",\n            \"Feb 14, 11:30\",\n            \"Feb 14, 11:35\",\n            \"Feb 14, 11:40\",\n            \"Feb 14, 11:45\",\n            \"Feb 14, 11:50\",\n            \"Feb 14, 11:55\",\n            \"Feb 14, 12:00\",\n            \"Feb 14, 12:05\",\n            \"Feb 14, 12:10\",\n            \"Feb 14, 12:15\",\n            \"Feb 14, 12:20\",\n            \"Feb 14, 12:25\",\n            \"Feb 14, 12:30\",\n            \"Feb 14, 12:35\"\n        ]\n    },\n    \"network_chart\": {\n        \"data\": [\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            6445,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            7,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0,\n            0\n        ],\n        \"labels\": [\n            \"Feb 14, 10:10\",\n            \"Feb 14, 10:15\",\n            \"Feb 14, 10:20\",\n            \"Feb 14, 10:25\",\n            \"Feb 14, 10:30\",\n            \"Feb 14, 10:35\",\n            \"Feb 14, 10:40\",\n            \"Feb 14, 10:45\",\n            \"Feb 14, 10:50\",\n            \"Feb 14, 10:55\",\n            \"Feb 14, 11:00\",\n            \"Feb 14, 11:05\",\n            \"Feb 14, 11:10\",\n            \"Feb 14, 11:15\",\n            \"Feb 14, 11:20\",\n            \"Feb 14, 11:25\",\n            \"Feb 14, 11:30\",\n            \"Feb 14, 11:35\",\n            \"Feb 14, 11:40\",\n            \"Feb 14, 11:45\",\n            \"Feb 14, 11:50\",\n            \"Feb 14, 11:55\",\n            \"Feb 14, 12:00\",\n            \"Feb 14, 12:05\",\n            \"Feb 14, 12:10\",\n            \"Feb 14, 12:15\",\n            \"Feb 14, 12:20\",\n            \"Feb 14, 12:25\",\n            \"Feb 14, 12:30\",\n            \"Feb 14, 12:35\"\n        ]\n    }\n}"}],"_postman_id":"20c40b67-3197-41f8-a3ef-7c4ee9fbfaf2"},{"name":"Edit server settings","id":"08ec34ce-0e7d-4ee3-9248-4a571b196cf1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/<VM_ID>/editserver","description":"<p>Retrieves a comprehensive list of device's <strong>Edit</strong> panel settings:</p>\n<ul>\n<li>Storage entities and configuration</li>\n<li>Networks</li>\n<li>System CPU &amp; RAM configuration</li>\n</ul>\n<h3 id=\"response-body-availabledevices-array\">Response body (<code>availableDevices</code> array)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>localvmid</code></td>\n<td>Device's ID.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>vmdisplayname</code></td>\n<td>Device's display name.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>hv_type</code></td>\n<td>Cloud type. Can be either <code>public</code> or <code>private</code>.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>hv_system.datacenterName</code></td>\n<td>Name of a vCenter's datacenter.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>hv_system.type</code></td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>localVmId</code></td>\n<td>Device's ID.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>vmHostName</code></td>\n<td>Device's host name.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>hasSnapshot</code></td>\n<td>If <code>1</code>, device has snapshots; if <code>0</code> – has no snapshots.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>templatesInfo.allowed_resize_existing_partition</code></td>\n<td></td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>templatesInfo.type</code></td>\n<td></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>allowedIpGuest</code></td>\n<td>If <code>1</code>, allows change network's configuration from vdc. If <code>0</code> – does not.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>dvportgroup</code></td>\n<td>External network's ID.</td>\n<td><em>array</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","vmlist","<VM_ID>","editserver"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"c799b952-502d-4637-959d-c4e5ceda7126","name":"Edit server settings","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/<VM_ID>/editserver"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 14:23:52 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=ER7OrZe%2B0aaFgXNplhjKkrF7ZZJJ%2FFBx2X5N%2BAxs1pPJ%2BSKz84wNyFsxtEMOfWZ6Qk6JQpct6I6pa8qHyZS13MlCRf%2B5XT0cCFYLjdxEDHsyp8nIjK9DeMHA7AtsGg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6637abad638bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"rules\": {\n        \"availableDevices\": [\n            {\n                \"localvmid\": \"<VM_ID>\",\n                \"vmdisplayname\": \"display-name\",\n                \"hv_system_id\": 1,\n                \"hv_type\": \"public\"\n            }\n        ]\n    },\n    \"localVmId\": \"<VM_ID>\",\n    \"vmHostName\": \"Device Host Name\",\n    \"hasSnapshot\": true,\n    \"templatesInfo\": {\n        \"allowed_resize_existing_partition\": 1,\n        \"type\": \"Linux\",\n        \"hv_type\": null,\n        \"hv_system\": null\n    },\n    \"system\": {\n        \"cpu\": 1,\n        \"ram\": 1\n    },\n    \"storage\": {\n        \"config.hardware.device.12345\": {\n            \"id\": \"145-2000\",\n            \"label\": \"Hard disk 1\",\n            \"size\": 5,\n            \"status\": true,\n            \"type\": \"SSD\"\n        }\n    },\n    \"networksInterfaces\": {\n        \"config.hardware.device.12345\": {\n            \"network\": {\n                \"macAddress\": \"00:00:00:aa:00:a0\",\n                \"id\": 123123123,\n                \"label\": \"Network Label\",\n                \"type\": \"LAN\",\n                \"networkName\": \"Network Name\",\n                \"subnet\": \"1.2.3.4/24\",\n                \"dns1\": \"1.2.3.4\",\n                \"dns2\": null\n            },\n            \"availableIPs\": [\n                {\n                    \"value\": 123456,\n                    \"label\": \"1.2.3.4\"\n                }\n            ],\n            \"secondaryIPs\": [\n                {\n                    \"value\": 1234567,\n                    \"label\": \"4.5.6.7\"\n                }\n            ]\n        }\n    },\n    \"tenantIdentifier\": \"<TENANT_ID>\",\n    \"allowedIpGuest\": 1,\n    \"tenantNetworks\": {}\n}"}],"_postman_id":"08ec34ce-0e7d-4ee3-9248-4a571b196cf1"},{"name":"Rename device","id":"05f73618-876d-4579-a65a-614e785911ce","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"vmdisplayname\",\n\t\"value\": \"Test Documentation Device\"\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/updateField","description":"<p>Renames a specific device by its <code>localvmid</code> in the URL and a <code>value</code> in the request body.</p>\n<blockquote>\n<p>Do not change the <code>\"name\": \"vmdisplayname\"</code> parameter.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","updateField"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"381a42df-af71-4f38-9010-c9bb85bb9da7","name":"Rename device","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"vmdisplayname\",\n\t\"value\": \"Test Documentation Device\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/updateField"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:53:38 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=2lYTKlpbq2ZuAk48tXdMMEaKdTo3tsiC29fBkeb%2FG3zlOD6lWcOOGSqOaiF2HCz2qnQxwc8VbghYLQBo3E%2FRXxItJvcQHrdWSX0iFslM%2F1Fv%2BBXJeb%2BR9wI256mVmw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6e70d3b8578a3-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Device information has been updated.\"\n}"}],"_postman_id":"05f73618-876d-4579-a65a-614e785911ce"},{"name":"Edit device notes","id":"01662bc1-17be-4aff-91b5-714e9d79426f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"notes\": \"This device is very important.\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/updateNotes","description":"<p>Allows you to create or edit device notes. Endpoint URL requires a <code>vmid</code>.</p>\n<h3 id=\"how-it-works-on-the-ui\">How it works on the UI</h3>\n<p><img src=\"https://cdn.document360.io/b2b2fafd-0e5f-4a9b-8f09-93b5fd4cacc4/Images/Documentation/editnote.png\" alt /></p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","updateNotes"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"a2cb2731-37c4-49f2-ad7e-431990deb168","name":"Edit device notes","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"notes\": \"This device is very important.\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/updateNotes"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 10:11:00 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=ErwRj%2BwIRo2B2cfJjy2FoF0ghvJgiSX%2Bg%2BVwhk7NmnZo%2BzblvliEOUmKVJYGV5NvQ4irJFwKOGfrLvy0sHdVqmV%2BvrRn0mAmKFUGem4xIYn9HwLQpNgev%2FbEWjFAx6I%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"71705c832f9677ec-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Device notes have been changed.\"\n}"}],"_postman_id":"01662bc1-17be-4aff-91b5-714e9d79426f"},{"name":"Mount tools installer","id":"a1bc4d18-d19d-420d-8b68-0855fc8155d3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/mountTools","description":"<p>This request mounts VMWare tools to a specific device.</p>\n<blockquote>\n<p>Learn more about VMWare here - <a href=\"https://kb.vmware.com/s/article/1003910%5D\">https://kb.vmware.com/s/article/1003910</a>.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","mountTools"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"cc2f8c98-6ccf-46ba-a938-9d595ee966ae","name":"Mount tools installer","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/mountTools"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:55:55 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=KYIhEqT0MWkUpZCkl9jG4fVEeRZ6K9nM3cAaUEC8ZFm%2FNaKDxFk19ScW5G79vjG9d3QBaL9VrxfYTVzg%2B9fCfm82wTGFqhxqfhOkXcB2J7j6ceQjESGsrPiWGVeL5A%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6ea61588178a3-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Tools successfully mounted.\"\n}"}],"_postman_id":"a1bc4d18-d19d-420d-8b68-0855fc8155d3"},{"name":"Add SSH key to a device","id":"28f9aa58-43cc-4712-9b44-aaf84bd32db2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"sshKeyId\": \"<SSH_KEY_ID>\"\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/ssh/assign","description":"<p>Assigns SSH key to a specific device. The following SSH will appear in the <strong>Added keys</strong> table within a device page.</p>\n<p>You can get <code>sshKeyId</code> through the <strong>Add SSH key</strong> endpoint.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","ssh","assign"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"ab9cbcce-a383-4421-946f-e7bf755aa340","name":"Add SSH key to a device","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"sshKeyId\": <SSH_KEY_ID>\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/638e9e393a43/ssh/assign"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:40:09 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=r0UvVVcvUQ1Qj2KJOg%2BhGH0puMpB2%2FctWONgk7h1ErZ5%2B7ehzjp2lhtg%2FZghww%2FJQVYQMJsGdFvR9qPUgcYkhjtO653W6h%2B3lUXgE0sLhxfxl0%2B2PFpKqC0dPJA4Ow%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed623826b3c38bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"SSH key successfully added.\"\n}"}],"_postman_id":"28f9aa58-43cc-4712-9b44-aaf84bd32db2"},{"name":"ISO mount","id":"e8d0a37f-a8b1-40a3-a1c0-48b64020d643","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"controller\": 15000,\n\t\"iso\": \"100\",\n\t\"key\": 16000\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/iso/mount","description":"<p>Adds a new ISO mount to a specific device configuration. <a href=\"https://xelonhq.postman.co/workspace/bdc52937-8a21-486f-8356-12539f2d7854/folder/19092098-8460b6de-23d1-43b2-9d68-c336b367f49c\">Learn more about the ISO files in the corresponding section</a>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","iso","mount"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"01d68eae-160e-4433-ac90-1abe2dc4c8d7","name":"ISO mount","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"controller\": 15000,\n\t\"iso\": \"100\",\n\t\"key\": 16000\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/iso/mount"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 14:19:04 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=JNmzXo76swKDa5kzzknud3cEexZ5JvMq0axATH16g1TC5KFS2DWavCM4%2Fg%2BFfpiBE8FqcPVOjK8zfd8t0jgI8xevVr0a1P1C5E8EXN32b6yFRsVuVyjQhoBM6TQrCA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed65c85f86938bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"ISO successfully mounted.\"\n}"}],"_postman_id":"e8d0a37f-a8b1-40a3-a1c0-48b64020d643"},{"name":"ISO unmount","id":"e5ade17b-b527-4163-84b7-3da513f10638","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"controller\": 200,\n\t\"key\": 3000\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/iso/unmount","description":"<p>Unmounts a selected ISO. Body request requires <code>controller</code> and <code>key</code> parameters.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","iso","unmount"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"26bc5120-5007-44e9-bfdf-81ca3ad73ff8","name":"ISO unmount","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"controller\": 200,\n\t\"key\": 3000\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/iso/unmount"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 14:19:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=V9jvsSSkZbZVtqoetYVioBGrZDuzxuoc%2FLlXJpD95fKo5lgNYIueuceMsS9NVYKt1g2wX5aoMH6NGSPkqI8Vh0DoDHYFAsLx83j0Zt7tMPAaupm%2F2xbTXEIPiXIzYw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed65d7d3eec38bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"ISO has been unmounted!\"\n}"}],"_postman_id":"e5ade17b-b527-4163-84b7-3da513f10638"},{"name":"Start server","id":"ecfa5708-a363-41c7-b34f-f874e8112a57","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/startserver","description":"<p>Starts a specific server. Endpoint URL requires a <code>localvmid</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","startserver"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e7f2f160-c132-49e1-9ccb-42dff706d328","name":"Start server","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/startserver"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:06:56 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=AtlhL8zbOwKeLUCyH9AjPAWyOsxSpe9u61R5QshZJoXW1Tlq%2FT1BrSrYbCwKgF1dREZIyluHww68ONxu6qV0ZE8HwoKlblNJ%2BLjPJHgspyPIHM9r8HPCTKyOjwBnDQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6a2a22be538b9-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server is starting\"\n}"}],"_postman_id":"ecfa5708-a363-41c7-b34f-f874e8112a57"},{"name":"Reboot server","id":"1e16111b-77ae-4680-80af-8a3be7bcacfc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/rebootserver","description":"<p>Makes a reboot for a specific server. Endpoint URL requires a <code>localvmid</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","rebootserver"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"d3eebc80-5b53-4c08-94c7-77f4eea2f00d","name":"Reboot server","originalRequest":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/rebootserver"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:07:14 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=jMX9EoyTia9spUfJZpwxggsAxLiH5VcsTdGMFQBfYtwUXv59zQ8mqkWM4X2ezE2PB6na%2BBmFbv0Myjftra4KsNJ7fNnakqTzRxG%2F04wXLOTDf4nRq9I9MAAbz8bh5Q%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6a313685e38b9-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server is rebooting\"\n}"}],"_postman_id":"1e16111b-77ae-4680-80af-8a3be7bcacfc"},{"name":"Update server's CPU & RAM","id":"af7c7b51-91f9-432d-807a-ba8ffe579835","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"cpuvalue\": 11,\n\t\"ramvalue\": \"45\"\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/updateserver","description":"<p>Updates a device's CPU and RAM configuration. Body request should contain new values for each parameter.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Limitation</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cpuvalue</code></td>\n<td>Amount of CPU cores.</td>\n<td><em>integer</em></td>\n<td>Min: 1; Max: 12</td>\n</tr>\n<tr>\n<td><code>ramvalue</code></td>\n<td>Amount of RAM GBs.</td>\n<td><em>string</em></td>\n<td>Min:1; Max: 128</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","updateserver"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"922afed8-e0d1-47f5-bc2b-fdeac5b881a7","name":"Update server's CPU & RAM","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"cpuvalue\": 11,\n\t\"ramvalue\": \"45\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/updateserver"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 14:26:12 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=Wvc3Vj8kBmqxckB7CyHiMh8TX0OgDNbBEQZTsT7VJxTPWFVUT%2FNY%2FvdRSZK7YazdZdaYGSToyesQ4lLyMl7Tj9SXCpK2z%2Fw%2FzKbtV0dqj%2B8OJN5lg3QrKJkJ0XjMIQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed666f6ebfa38bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server is upgrading\"\n}"}],"_postman_id":"af7c7b51-91f9-432d-807a-ba8ffe579835"},{"name":"Shut down server","id":"7f3f8a57-4066-48bc-9c8c-338792acbc48","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/shutdownserver","description":"<p>Shuts down a specific server. Endpoint URL requires a <code>localvmid</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","shutdownserver"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"5e7b06e9-bbe1-4d73-9ae0-2d4fc3143aa9","name":"Shut down server","originalRequest":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/shutdownserver"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:07:35 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=Wt4KFgI66rhEkRhgBfAuuCjHonHZVhPcyk2hHNYgMyF98iT4B4r4DODNDKr9wv1ScEq0%2Fz8GjBgwzIPwa1zSNjGv5jNZGWsMQtPkJJrMfdFthsDdf%2FS4MQZ%2FzoWOPQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6a397da8e38b9-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server has been shut down.\"\n}"}],"_postman_id":"7f3f8a57-4066-48bc-9c8c-338792acbc48"},{"name":"Stop server","id":"c34e0eff-11ad-461e-9965-fe1e1ca6aaf1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/stopserver","description":"<p>Stops a specific server. Endpoint URL requires a <code>localvmid</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","stopserver"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"5cbdc85b-b869-4877-bfa2-14b259789bad","name":"Stop server","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/stopserver"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:52:57 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=nUCOOpbvl9Q2G2lQAblo2%2FBd%2BTjZBk66WnruUJfyS%2FTD7Hx7H%2FiLxT3kb7ktTLVH4rECzRcIpKj4zNiSElON5hWZc%2BQ4oJtQ7AiLu3BYaPW3nlxBkSE4di9ZhgCg%2Fg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6e60a4a8978a3-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server is being stopped.\"\n}"}],"_postman_id":"c34e0eff-11ad-461e-9965-fe1e1ca6aaf1"},{"name":"Delete server","id":"85cbf93a-9980-4277-b2df-02b7ce3f6151","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>","description":"<p>Deletes a specific server due to the <code>localvmid</code> included in the endpoint URL.</p>\n<blockquote>\n<p>Through this request you can delete a device even when it's being provisioned.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"1d28653b-9bee-4f79-a340-7c964b354c6a","name":"Delete server","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 15:11:24 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=YDjAuQK16SJILVGMrX7LXIFTzwg8hZWmSnkV7A%2Bp%2FxH3zgDOFAORB4PB3WWN0wZs4CMx055cap1SRnDXVGrHcqiLvN7McTwPLjZVWL8GnNH6duc36ruka4GOHK%2Bs5A%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6a92e199538b9-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server has been deleted.\"\n}"}],"_postman_id":"85cbf93a-9980-4277-b2df-02b7ce3f6151"},{"name":"Clone device","id":"fe30164e-e3d1-4dab-9764-285c9c34839f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"displayName\": \"<DISPLAY_NAME>\",\n    \"hostName\": \"<CLONNAME>0\",\n    \"localvmid\": \"<LOCALVMID>\",\n    \"networks\": [\n        {\n            \"networkId\": \"<NETWORK_ID>\",\n            \"ip\": \"10.50.10.8\"\n        }\n    ],\n    \"tenantId\": \"<TENANT_ID>\",\n    \"withoutNics\": false,\n    \"snapshot\": \"<SNAPSHOT>\",\n    \"withoutCustomization\": false\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/clone","description":"<p>Use this endpoint to create a clone of an existing device.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>displayName</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>hostName</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>localvmid</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>networks</code></td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>tenantId</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>withoutNics</code></td>\n<td><em>boolean</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","clone"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"fe30164e-e3d1-4dab-9764-285c9c34839f"},{"name":"Device resource usage","id":"23bfe6e2-89ce-4f93-813c-ebfb1a108483","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"startDate\": \"2026-01-01\",\n    \"endDate\": \"2026-01-31\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/<VM_ID>/usage","description":"<p>Use this endpoint to get resource usage data of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","vmlist","<VM_ID>","usage"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0990c994-f77e-4438-aecd-001b561a828f","name":"Device resource usage","originalRequest":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/<VM_ID>/usage","description":"Use this endpoint to get resource usage data of a device."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"endDate\": \"2026-01-01T12:00:00+01:00\",\n    \"entity\": null,\n    \"networksByTenants\": [],\n    \"pricingOverview\": {\n        \"Backup\": {},\n        \"CPU\": {},\n        \"Firewall\": {},\n        \"HDD\": {},\n        \"Licenses\": {},\n        \"Network\": {},\n        \"RAM\": {},\n        \"Replication\": {},\n        \"Snapshot\": {},\n        \"Storage\": {}\n    },\n    \"resourceData\": [\n        {\n            \"backupStorage\": 1,\n            \"baseFee\": 1,\n            \"breadcrumbs\": \"<BREADCRUMBS>\",\n            \"cpu\": \"<CPU>\",\n            \"cpuOn\": \"<CPU_ON>\",\n            \"description\": \"<DESCRIPTION>\",\n            \"firewall\": \"<FIREWALL>\",\n            \"hdd\": \"<HDD>\",\n            \"hourly\": 1,\n            \"loadBalancer\": \"<LOAD_BALANCER>\",\n            \"newCount\": 1,\n            \"off\": \"<OFF>\",\n            \"on\": \"<ON>\",\n            \"price\": 1,\n            \"ram\": \"<RAM>\",\n            \"ramOn\": \"<RAM_ON>\",\n            \"snapshot\": \"<SNAPSHOT>\",\n            \"storage\": \"<STORAGE>\",\n            \"tenantId\": 1,\n            \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n            \"tenantname\": \"<TENANTNAME>\",\n            \"total\": 1,\n            \"totalCost\": 1,\n            \"value\": \"<VALUE>\",\n            \"windowssrvlic\": null\n        }\n    ],\n    \"startDate\": \"2026-01-01T12:00:00+01:00\",\n    \"subtotal\": 1,\n    \"taxRate\": \"<TAX_RATE>\",\n    \"tenantIdentifier\": \"<TENANT_IDENTIFIER>\",\n    \"tenantName\": \"<TENANT_NAME>\",\n    \"totalCosts\": 1,\n    \"totalDiscount\": 1,\n    \"totalPartnerDiscount\": 1,\n    \"vat\": 1\n}"}],"_postman_id":"23bfe6e2-89ce-4f93-813c-ebfb1a108483"},{"name":"Device extra config","id":"cde9a1d4-2922-4bd5-93d8-6e6cad145c4e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/extraConfig?key=disk","description":"<p>Use this endpoint to get the extra configuration parameters of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","extraConfig"],"host":["https://vdc.xelon.ch"],"query":[{"key":"key","value":"disk"}],"variable":[]}},"response":[],"_postman_id":"cde9a1d4-2922-4bd5-93d8-6e6cad145c4e"}],"id":"efcf9455-6f95-4df3-8063-cfeb9b02e8d4","_postman_id":"efcf9455-6f95-4df3-8063-cfeb9b02e8d4","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Device Network interfaces","item":[{"name":"Add network interface card (NIC)","id":"2b39cc56-9a7a-4e59-844d-62f597b10519","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"networkid\": 12345\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/addnetworkinterface","description":"<p>Adds a new network interface card (NIC) to the specific device. Endpoint URL requires a <code>vmid</code>, while the request body requires a <code>networkid</code> integer parameter of a specific network.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","addnetworkinterface"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"9ef9570a-7f46-4325-9da2-850199b0fad3","name":"Add network interface card (NIC)","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"networkid\": 12345\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/addnetworkinterface"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:02:46 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=kFwALUHns38CH7n9tDRlhjz9KYHGQN3AupjLuyoa2UoWwa9K0%2FDZMkicwlffBD9m74SecULud56dMW4cET%2F3VzPoJPVvtBBK2dxuSB4UKJukpzpEzD6HITFmS7pywg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed5ecc29b2538bf-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server is adding the new NIC...\"\n}"}],"_postman_id":"2b39cc56-9a7a-4e59-844d-62f597b10519"},{"name":"Update and store IPs","id":"f7a81c9d-0bf9-4c8f-b37a-521a6a019ea3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"networkEdit\": true,\n    \"networkId\": 123,\n    \"primaryIpId\": 456,\n    \"secondary\": [\n        789\n    ],\n    \"connectOnPowerOn\": true,\n    \"default\": null,\n    \"isConnected\": true,\n    \"primaryIp\": \"10.50.10.17\",\n    \"isWithReboot\": false\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/<VM_ID>/update/<NET_ID>/<NIC_UNIT>","description":"<p>This endpoint updates primary and secondary IPs for a device.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>networkEdit</code></td>\n<td>When you change the network, this parameter should be set as <code>true</code>. Otherwise, <code>false</code>.</td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>networkId</code></td>\n<td>ID of a network for this device.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>primaryIpId</code></td>\n<td>ID of a primary IP for this device.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>secondary</code></td>\n<td>Array of secondary IPs for this device.</td>\n<td><em>array</em> of <em>integer</em> values</td>\n</tr>\n<tr>\n<td><code>connectOnPowerOn</code></td>\n<td>Connect the network interface when the device is powered on.</td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>isConnected</code></td>\n<td>Connect (<code>true</code>) or disconnect (<code>false</code>) the network interface.</td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>default</code></td>\n<td>Set to <code>1</code> to make this interface the default one.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>primaryIp</code></td>\n<td>Primary IP address of the interface; must be a valid IP address.</td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>The IP is changing automatically, but new Gateway should be added manually on the server.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","vmlist","<VM_ID>","update","<NET_ID>","<NIC_UNIT>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"c21890a4-b115-4830-af75-1a444ee021b3","name":"Update and store IPs","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"networkEdit\": true,\n\t\"networkId\": 123,\n\t\"primaryIpId\": 456,\n\t\"secondary\": [\n\t\t789\n\t]\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/<VM_ID>/update/83/7","host":["https://vdc.xelon.ch"],"path":["api","service","<TENANT_ID>","vmlist","<VM_ID>","update","83","7"],"query":[{"key":"primaryIpId","value":"87","disabled":true},{"key":"secondary[]","value":"83","disabled":true},{"key":"secondary[]","value":"84","disabled":true},{"key":"secondary[]","value":"85","disabled":true},{"key":"networkId","value":"1","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:05:03 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=xCPXTJs7hGNnR27KgLp7iKDi3B5L37sP5uIuqf52xYDRS0Y2rwnCx9CwJBn%2F8XVGXhuHTq5hxdQYRG4wfy%2BkdLlajUNcc79XzGcc4MBFaDdiwYNrkIEnOzZmD2OG7g%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed5f015ccb138bf-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"IP configuration was successfully updated.\"\n}"}],"_postman_id":"f7a81c9d-0bf9-4c8f-b37a-521a6a019ea3"},{"name":"Delete network interface","id":"70fa89c1-300b-4921-809e-e2441d4ff083","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/deletenetworkinterface?nickey=4002&nicunit=9","description":"<p>Deletes a specific network interface. Endpoint URL requires a <code>vmid</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","deletenetworkinterface"],"host":["https://vdc.xelon.ch"],"query":[{"key":"nickey","value":"4002"},{"key":"nicunit","value":"9"}],"variable":[]}},"response":[{"id":"93973143-b1c6-4673-922d-e3b09370a142","name":"Delete network interface","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":{"raw":"https://vdc.xelon.ch/api/service/vmlist/638e9e393a43/deletenetworkinterface?nickey=4002&nicunit=9","host":["https://vdc.xelon.ch"],"path":["api","service","vmlist","638e9e393a43","deletenetworkinterface"],"query":[{"key":"nickey","value":"4002"},{"key":"nicunit","value":"9"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:03:25 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=%2FJJ87%2B90nUFHMASo5kSZ2T3UfjAE%2FEU080BCI9RktFpDo%2FS9xydNzmesDLkhAHLtBkpY1MRb2xod3tKcGUeT%2BvN1mxiVImx454QDss9qCbCpfwv0xOUu9ef1vSfBiA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed5edb19ba238bf-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server is deleting the NIC!\"\n}"}],"_postman_id":"70fa89c1-300b-4921-809e-e2441d4ff083"},{"name":"Set Default Gateway","id":"b0ff5d7a-bb2a-4123-8ae6-baef45a6edd4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"nicunit\": 1\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/defaultGateway?ipAddr=10.0.0.80","description":"<p>Allows you to change or set the default gateway for your device. This is required if you add a second network interface that should become your new primary interface.</p>\n<h3 id=\"additional-parameters\">Additional parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>nicunit</code></td>\n<td>Unit number of the network interface that should become the default gateway.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","defaultGateway"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>An IP address of a default gateway for your device.</p>\n","type":"text/plain"},"key":"ipAddr","value":"10.0.0.80"}],"variable":[]}},"response":[{"id":"9c51c6ec-0f12-40f8-bc97-6ce21b273747","name":"Set Default Gateway","originalRequest":{"method":"POST","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/defaultGateway?ipAddr=10.0.0.80","host":["https://vdc.xelon.ch"],"path":["api","service","vmlist","<VM_ID>","defaultGateway"],"query":[{"key":"ipAddr","value":"10.0.0.80","description":"An IP address of a default gateway for your device."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 26 May 2022 09:50:24 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=kLM%2FrKUKzk4B2NvFktIs4rI%2Bg0YP1KWfVbgNUiwJgZkHC3cQblC8fEE1LcXBSu0eeqTLtOsnkl1W%2FzcxVxAiGDO%2BpL0FKagFl6JlA%2F%2Bsl%2BRoEm0oL%2FLNSxisGYGhgxM%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"71159b3a5d742da0-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Default gateway successfully changed.\"\n}"}],"_postman_id":"b0ff5d7a-bb2a-4123-8ae6-baef45a6edd4"}],"id":"d9e09f46-8201-402c-8be0-7adcfe299908","description":"<p>Within the platform, each network has its own unique <code>networkid</code> by which it can be managed.</p>\n","event":[{"listen":"prerequest","script":{"id":"16cc362e-771c-438a-ba49-d8652df63e25","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"d419dc94-477a-4515-a328-b498e49ecbdc","type":"text/javascript","exec":[""]}}],"_postman_id":"d9e09f46-8201-402c-8be0-7adcfe299908","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Device Storages","item":[{"name":"Add storage","id":"66d9afcc-c6c7-450a-ae96-501ba29a9edf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"capacityStorage\": false,\n\t\"diskvalue\": 10\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/addstorage","description":"<p>Creates new storage. Endpoint URL requires a <code>vmid</code>.</p>\n<h3 id=\"body-request\">Body request</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>capacityStorage</code></td>\n<td><code>true</code> for HDD and <code>false</code> for SSD.</td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>diskvalue</code></td>\n<td>Disk volume number in gigabytes. 1GB to 2048GB for SSD. 50GB to 2048GB for HDD.</td>\n<td><em>integer</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","addstorage"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0905232b-14f3-441d-8df6-5529d193295d","name":"Add storage","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"capacityStorage\": false,\n\t\"diskvalue\": 10\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/638e9e393a43/addstorage"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:36:55 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=rq8uyxhskzoQqnJMSIwbsN5wKgHmbGBIUXjBurWOQnuhs3CgqEO%2Bgf7iuVbfwCHg1OO83cN1nBFR2MRl2SVdhnvYEsn2aieLKar27goZm6SOXuV0oIj%2BZ%2F95WeiJmA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed61ec7fcf338bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server is adding the new disk...\"\n}"}],"_postman_id":"66d9afcc-c6c7-450a-ae96-501ba29a9edf"},{"name":"Edit storage","id":"96a1be35-7f4b-4213-886e-dd64e4daaefc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"diskvalue\": 5120,\n\t\"partitionextend\": \"yes\",\n    \"id\": \"1234-4321\",\n\t\"storeSnapshot\": true\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/editstorage","description":"<p>Edits a specific storage. Endpoint URL requires a <code>vmid</code>.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>diskvalue</code></td>\n<td>Disk capacity in GB. Min: <code>1</code> ; Max: <code>2048</code>.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>Disk ID.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>partitionextend</code></td>\n<td>If <code>yes</code> — extends the partition and disk. Otherwise – <code>no</code>.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>storeSnapshot</code></td>\n<td>If <code>true</code> — automatically makes a snapshot during disk extension.</td>\n<td><em>boolean</em></td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Extending the partition rewrites the partition table. In case of an issue, this can break the file system. We strongly recommend to create a snapshot before the partition upgrade.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","editstorage"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"4a9682f9-860d-4373-8ed7-b7fb0cd52fd6","name":"Edit storage","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"diskvalue\": 5120,\n\t\"partitionextend\": \"yes\",\n    \"id\": \"1234-4321\",\n\t\"storeSnapshot\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/editstorage"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:37:15 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=nYazFob9G1bMbOLqIS2flumEjxJVSzMIbC7K3QLR9651X6%2FEIzG9P6UnzJl4GqH%2Bn31mtCP2lViuvIIc9h2DdCzQl3Nkd2gUuwADdjTeSXg0yDpa31xEFZhoFEXUlQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed61f421bf438bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Disk and partition upgrade in progress...\"\n}"}],"_postman_id":"96a1be35-7f4b-4213-886e-dd64e4daaefc"},{"name":"Delete storage","id":"9af2bd1b-67bd-4381-a4f0-71a9680ec00e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/deletestorage?id=<DISK_ID>","description":"<p>Use this endpoint to delete the device's storage. Request URL requires a <code>diskKey</code> parameter.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","deletestorage"],"host":["https://vdc.xelon.ch"],"query":[{"key":"id","value":"<DISK_ID>"}],"variable":[]}},"response":[{"id":"3f211970-78c2-468e-8e42-f64ce7576cf6","name":"Delete storage","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":{"raw":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/deletestorage?diskkey=<DISK_KEY_ID>","host":["https://vdc.xelon.ch"],"path":["api","service","vmlist","<VM_ID>","deletestorage"],"query":[{"key":"diskkey","value":"<DISK_KEY_ID>"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:37:53 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=HAztdwP9TAE%2BZQqPrxh2pbupKLYj9WlTuZwY8cpuezqYY2OihseLmP%2FXLjA8qXLi3htAJUQS3VHzSHM1PIpygQxI9dt0ihNtetB6yrNn8FDusyuwEu0XaEKAxJUOTw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed620351eb538bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Server is deleting the disk!\"\n}"}],"_postman_id":"9af2bd1b-67bd-4381-a4f0-71a9680ec00e"}],"id":"fe724a36-e4f4-47e6-bf19-05f81da0c13c","description":"<p>Xelon HQ has two storage types (called 'Hard Disks' in UI) — HDD and SSD.</p>\n<p><strong>SSD (5GB to 2048GB volume) —</strong> is often used for OS, Database, Web Services, File Server, Applications.</p>\n<p><strong>HDD (Limited IO's, 50GB to 2048GB volume)</strong> — mostly used for storing large archive files.</p>\n","event":[{"listen":"prerequest","script":{"id":"cc71c8c0-cf17-4760-a79c-cb97e2eb681b","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"d1082979-a4e2-4c9d-9759-677b2d778950","type":"text/javascript","exec":[""]}}],"_postman_id":"fe724a36-e4f4-47e6-bf19-05f81da0c13c","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Device Backups","item":[{"name":"Backup info","id":"b91b4e1a-0af5-4135-9bfa-71c0f2918b9c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/backupJob/tag/list/<VM_ID>","description":"<p>This endpoint retrieves a task's <code>guid</code> for the current backup frequency configuration within a specific device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","backupJob","tag","list","<VM_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"775002eb-4578-445e-afa3-7b3ec78dfad4","name":"Backup info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/backupJob/tag/list/<VM_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:48:48 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=DOjZP2v2KgG590K9UDV7v5nos8G4eBT1Ff1cPiHTTBFhXnv9qxUYrlWTR5fXvHWxg9ja6Fz1K543SyKv0ZI4AninPhJQ5LRn8J67b0oXDpaPeBqwFdSHnn%2B79IoLKw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed63030ba0338bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"value\": [\n        \"<URN_TAG>\"\n    ]\n}"}],"_postman_id":"b91b4e1a-0af5-4135-9bfa-71c0f2918b9c"},{"name":"Change backup frequency","id":"353dfd6d-9846-4bda-9859-eb074aa041ec","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"backupId\": 2\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/backupJob/tag/change/<VM_ID>","description":"<p>Sets backup frequency configuration for a specific device. Endpoint URL requires <code>vmid</code>.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Frequency</strong></th>\n<th><strong>Request</strong> <strong><code>backupId</code></strong> <strong>value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Daily Backup, kept for 5 days</td>\n<td><code>1</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 7 days</td>\n<td><code>2</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 5 days</td>\n<td><code>3</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 5 days, Weekly kept up for 4 weeks</td>\n<td><code>4</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 5 days, Weekly kept up for 8 weeks</td>\n<td><code>5</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 5 days, Weekly kept up for 16 weeks</td>\n<td><code>6</code></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","backupJob","tag","change","<VM_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"d744a8cf-9737-4de5-969b-6072325849de","name":"Change backup frequency","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"backupId\": 2\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/backupJob/tag/change/<VM_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:53:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=sy2uUidBuQ1cLE5nuQcJHLB2nVUEvHyEr8cLmuly8OTtz9rCOeK79DnlYrEr6ESPxcBA0I%2FcpsZqqdNixOourvLBpVbRCoye4DMNGumK2HOKE5gU9j0Y8bVWltYKEA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed63765ac6138bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Backup has been changed\"\n}"}],"_postman_id":"353dfd6d-9846-4bda-9859-eb074aa041ec"},{"name":"Remove backup frequency","id":"c3b3e3c2-04b5-431a-9cb8-2a6ddc804024","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/backupJob/tag/delete/<VM_ID>","description":"<p>Deletes current backup frequency settings, sets backup frequency to <code>none</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","backupJob","tag","delete","<VM_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e1fe2f34-7116-4a1e-bd8e-4f8e6cd0638e","name":"Remove backup frequency","originalRequest":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/backupJob/tag/delete/<VM_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:49:18 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=0dzq%2BpgWj9PQOqqQ8tYOAKA463Z5wZcYkWyhpghKqqwG8zqmFR6V4ix54L3wuN5y7XhMA2vXIUahTznrjm3O9%2F5k6L1XIwvNEqNTEn%2FW8KhegNoINpBVU7MyFW1cDw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed630e7592038bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Backup has been deleted\"\n}"}],"_postman_id":"c3b3e3c2-04b5-431a-9cb8-2a6ddc804024"},{"name":"Recent backups","id":"b34a14c4-2ef4-4ea3-91ce-7fa47197b4a3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/backup/recent/<VM_ID>","description":"<p>Use this endpoint to get the list of recent backup restore points of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","backup","recent","<VM_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"b34a14c4-2ef4-4ea3-91ce-7fa47197b4a3"},{"name":"Mount restore point","id":"b1afc89e-b219-4569-a0de-53fbf6778a08","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"deviceId\": \"<DEVICE_ID>\",\n    \"restoreId\": \"<RESTORE_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/backup/mount-restore-point","description":"<p>Use this endpoint to mount a backup restore point.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>deviceId</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>restoreId</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","backup","mount-restore-point"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"b1afc89e-b219-4569-a0de-53fbf6778a08"}],"id":"314444df-8c3a-4a5a-9ed6-820f3fa2b72f","description":"<p>Each backup in our platform is, technically, a <em>task</em> that has its frequency. From the API standpoint, backups can have the following frequencies:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Frequency</strong></th>\n<th><strong>Request</strong> <strong><code>backupId</code></strong> <strong>value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Daily Backup, kept for 5 days</td>\n<td><code>1</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 7 days</td>\n<td><code>2</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 5 days</td>\n<td><code>3</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 5 days, Weekly kept up for 4 weeks</td>\n<td><code>4</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 5 days, Weekly kept up for 8 weeks</td>\n<td><code>5</code></td>\n</tr>\n<tr>\n<td>Daily Backup, kept for 5 days, Weekly kept up for 16 weeks</td>\n<td><code>6</code></td>\n</tr>\n</tbody>\n</table>\n</div><p>To remove the frequency configuration, use the <code>DEL</code> <strong>Remove backup frequency</strong> endpoint below.</p>\n","event":[{"listen":"prerequest","script":{"id":"f71e68c3-0ef8-426a-bbda-a45ac42f95ab","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"d4bfb485-9b67-497d-adb7-c7aa4ce24336","type":"text/javascript","exec":[""]}}],"_postman_id":"314444df-8c3a-4a5a-9ed6-820f3fa2b72f","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Device Replication","item":[{"name":"List of replication data","id":"b6f51cc4-60e2-49c7-a8fe-049b0300808e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/replication-data","description":"<p>Use this endpoint to retrieve the information about replicas pricing and multipliers.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th>Description</th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>baseFee</code></td>\n<td>The one-time base fee for each device when the replica is enabled.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>rto</code></td>\n<td>The amount of RTO hours.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>multiplier</code></td>\n<td>The price multiplier that corresponds to each RTO.</td>\n<td><em>integer</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","replication-data"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"23df8450-85f2-492e-ad05-d2c53a4d3f46","name":"List of replication data","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/replication-data"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"baseFee\": 30,\n    \"rtoMultipliers\": [\n        {\n            \"rto\": 1,\n            \"multiplier\": 2.3\n        },\n        {\n            \"rto\": 4,\n            \"multiplier\": 2\n        },\n        {\n            \"rto\": 8,\n            \"multiplier\": 1.85\n        },\n        {\n            \"rto\": 12,\n            \"multiplier\": 1.7\n        },\n        {\n            \"rto\": 24,\n            \"multiplier\": 1.55\n        },\n        {\n            \"rto\": 2,\n            \"multiplier\": 1.5\n        },\n        {\n            \"rto\": 0.5,\n            \"multiplier\": 2.5\n        }\n    ]\n}"}],"_postman_id":"b6f51cc4-60e2-49c7-a8fe-049b0300808e"},{"name":"Replication status & info","id":"b2a9dd0b-3d25-498e-81ca-45f4a483679f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/replicationJob/recent/<VM_ID>","description":"<p>This endpoint is used to get the replication status. The response's <code>status</code> value can be either <code>ready</code> of <code>failed</code>.</p>\n<blockquote>\n<p>Use this endpoint to retrieve the <code>id</code> of the replication, which is used in further endpoints.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","replicationJob","recent","<VM_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"ed1596bc-17fa-4825-b482-0530f1a48bf5","name":"Replication status & info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/replicationJob/recent/<VM_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 123,\n    \"vm_id\": \"<VM_ID>\",\n    \"source_hv_system_id\": 7,\n    \"source_hv_system_name\": \"<SOURCE_CLOUD_NAME>\",\n    \"destination_hv_system_id\": \"5\",\n    \"destination_hv_system_name\": \"<DESTINATION_CLOUD_NAME>\",\n    \"status\": \"ready\",\n    \"created_at\": \"<TIMESTAMP>\",\n    \"updated_at\": \"<TIMESTAMP>\",\n    \"ready_at\": \"2026-01-01T12:00:00+01:00\"\n}"}],"_postman_id":"b2a9dd0b-3d25-498e-81ca-45f4a483679f"},{"name":"Switch to the Replicated VM","id":"bd0d581f-fe76-45c0-b2e4-81a30c7abd66","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"replicationId\": \"123\",\n    \"password\": \"<PASSWORD>\",\n    \"networks\": [\n        {\n            \"networkId\": 12\n        },\n        {\n            \"networkId\": 34\n        }\n    ],\n    \"backupPlanId\": \"<BACKUP_PLAN_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/replicationJob/switch-to-replicated","description":"<p>Use this endpoint to switch your VM to the destination one.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Paremeter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>replicationId</code></td>\n<td>The <code>id</code> you get from the <strong><code>GET</code></strong> <strong>Replication status &amp; info</strong> response.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>password</code></td>\n<td>Your user's password.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>networks.networkId</code></td>\n<td>ID of a networks assigned to the replicated device.</td>\n<td><em>integer</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","replicationJob","switch-to-replicated"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"299b9c34-4735-4477-9d87-e62b45f479c4","name":"Switch to the Replicated VM","originalRequest":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"replicationId\": \"123\",\n    \"password\": \"<PASSWORD>\",\n    \"networks\": [\n        {\n            \"networkId\": 12\n        },\n        {\n            \"networkId\": 34\n        }\n    ]\n}","options":{"raw":{"language":"json"}}},"url":""},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\":\"<VM_ID>\",\n    \"name\":\"<REPLICATED_VM_HOSTNAME>\"\n}\n"}],"_postman_id":"bd0d581f-fe76-45c0-b2e4-81a30c7abd66"},{"name":"Disable VM Replication","id":"c0772497-bd7c-4a2a-be51-799af2f07c1b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/replicationJob/tag/delete/<VM_ID>","description":"<p>Use this endpoint to disable the VM Replication service for the specific device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","replicationJob","tag","delete","<VM_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"4013f950-0c96-4c44-aef9-753376922c60","name":"Disable VM Replication","originalRequest":{"method":"GET","header":[],"url":""},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Replication has been deleted.\"\n}"}],"_postman_id":"c0772497-bd7c-4a2a-be51-799af2f07c1b"},{"name":"List of replication jobs","id":"83facbc4-ffde-4217-83ee-a7e81c8d909d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/replicationJob/list/<CLOUD_ID>","description":"<p>Use this endpoint to get the list of replication jobs of a cloud.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","replicationJob","list","<CLOUD_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"83facbc4-ffde-4217-83ee-a7e81c8d909d"},{"name":"Change replication tag","id":"8f1f4425-341c-4910-b29e-ec44aad9ad59","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"replicationId\": \"<REPLICATION_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/replicationJob/tag/change/<VM_ID>","description":"<p>Use this endpoint to change the replication tag of a device.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>replicationId</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","replicationJob","tag","change","<VM_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"8f1f4425-341c-4910-b29e-ec44aad9ad59"}],"id":"984deaf4-674b-4b8e-8c29-a3f37ae3e946","_postman_id":"984deaf4-674b-4b8e-8c29-a3f37ae3e946","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Device Monitoring","item":[{"name":"Enable device monitoring","id":"50d83893-3bf4-47a0-b033-78b92bba88b3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/enable","description":"<p>Use this endpoint to enable monitoring for a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitorings","enable"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"50d83893-3bf4-47a0-b033-78b92bba88b3"},{"name":"Device monitoring info","id":"70521125-b0e5-4c7d-8c9d-0f188d52ef0b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings","description":"<p>Use this endpoint to get the monitoring configuration and alert rules of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitorings"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"70521125-b0e5-4c7d-8c9d-0f188d52ef0b"},{"name":"Device CPU usage","id":"5c334133-f81e-4050-9d3d-57644427cb04","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/cpu?range=8d","description":"<p>Use this endpoint to get CPU usage monitoring data of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitorings","cpu"],"host":["https://vdc.xelon.ch"],"query":[{"key":"range","value":"8d"}],"variable":[]}},"response":[{"id":"968c586f-d1f1-4af1-aec5-b970b058fa42","name":"Device CPU usage","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/cpu?range=8d","host":["https://vdc.xelon.ch"],"path":["api","service","vmlist","<VM_ID>","monitorings","cpu"],"query":[{"key":"range","value":"8d"}]},"description":"Use this endpoint to get CPU usage monitoring data of a device."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [],\n    \"labels\": []\n}"}],"_postman_id":"5c334133-f81e-4050-9d3d-57644427cb04"},{"name":"Device RAM usage","id":"2c443de5-ce83-48a0-88a6-af47653b9a79","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/ram","description":"<p>Use this endpoint to get RAM usage monitoring data of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitorings","ram"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"a704d42d-9199-4bc0-a0ab-f9f8c51cb5c6","name":"Device RAM usage","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/ram","description":"Use this endpoint to get RAM usage monitoring data of a device."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [],\n    \"labels\": []\n}"}],"_postman_id":"2c443de5-ce83-48a0-88a6-af47653b9a79"},{"name":"Device network usage","id":"6bf8eb67-dbe9-48f8-a973-31be59eec073","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/network","description":"<p>Use this endpoint to get network usage monitoring data of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitorings","network"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"d03f5f64-94e6-4ddc-b13e-2ab42a47ceaa","name":"Device network usage","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/network","description":"Use this endpoint to get network usage monitoring data of a device."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"in\": [],\n    \"labels\": [],\n    \"out\": []\n}"}],"_postman_id":"6bf8eb67-dbe9-48f8-a973-31be59eec073"},{"name":"Device disk usage","id":"97e158d0-b72e-4e50-bde7-d669baa99bb0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/disk","description":"<p>Use this endpoint to get disk usage monitoring data of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitorings","disk"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"7d697171-fead-4cbd-a38d-289e2b7277b9","name":"Device disk usage","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/disk","description":"Use this endpoint to get disk usage monitoring data of a device."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [],\n    \"labels\": []\n}"}],"_postman_id":"97e158d0-b72e-4e50-bde7-d669baa99bb0"},{"name":"Add monitoring email","id":"a1c27354-70da-4956-ab3c-4ca59689c9fa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"sernik@i.ua\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitoring/email","description":"<p>Use this endpoint to add a custom email address to the monitoring notifications of a device.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>email</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitoring","email"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"2035133a-9c06-4897-8325-0e60d203aa0d","name":"Add monitoring email","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"email\": \"sernik@i.ua\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitoring/email","description":"Use this endpoint to add a custom email address to the monitoring notifications of a device.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `email` | _string_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"email\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"email\": \"<EMAIL>\",\n        \"id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"virtual_machine_id\": 1\n    }\n}"}],"_postman_id":"a1c27354-70da-4956-ab3c-4ca59689c9fa"},{"name":"Sync monitoring emails","id":"56e94894-1e0d-402f-b6b9-32a26dc7cfd3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"custom_emails\": [\n        \"<CUSTOM_EMAILS>\"\n    ],\n    \"user_emails\": [\n        \"<USER_EMAILS>\"\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitoring/email/sync","description":"<p>Use this endpoint to replace the list of custom monitoring email addresses of a device with the provided list.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>custom_emails</code></td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>user_emails</code></td>\n<td><em>array</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitoring","email","sync"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"4b004ec5-01d4-480e-b8ff-693bb236dad5","name":"Sync monitoring emails","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"custom_emails\": [\n        \"<CUSTOM_EMAILS>\"\n    ],\n    \"user_emails\": [\n        \"<USER_EMAILS>\"\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitoring/email/sync","description":"Use this endpoint to replace the list of custom monitoring email addresses of a device with the provided list.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `custom_emails` | _array_ |\n| `user_emails` | _array_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"custom_emails\": [\n        {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"email\": \"<EMAIL>\",\n            \"id\": 1,\n            \"pivot\": {\n                \"alertable_id\": 1,\n                \"alertable_type\": \"<ALERTABLE_TYPE>\",\n                \"virtual_machine_id\": 1\n            },\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"virtual_machine_id\": 1\n        }\n    ],\n    \"user_emails\": [\n        {\n            \"auth_source\": \"<AUTH_SOURCE>\",\n            \"avatar\": \"<AVATAR>\",\n            \"business_phone\": \"<BUSINESS_PHONE>\",\n            \"country_code\": null,\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"email\": \"<EMAIL>\",\n            \"full_name\": \"<FULL_NAME>\",\n            \"graph_object_id\": null,\n            \"have_network\": false,\n            \"have_payment\": false,\n            \"hs_object_id\": null,\n            \"id\": 1,\n            \"job_title\": \"<JOB_TITLE>\",\n            \"name\": \"<NAME>\",\n            \"onboarding_completed\": false,\n            \"phone\": \"<PHONE>\",\n            \"pivot\": {\n                \"alertable_id\": 1,\n                \"alertable_type\": \"<ALERTABLE_TYPE>\",\n                \"virtual_machine_id\": 1\n            },\n            \"surname\": \"<SURNAME>\",\n            \"tenant\": {\n                \"account_manager\": null,\n                \"active\": false,\n                \"address\": \"<ADDRESS>\",\n                \"address2\": \"<ADDRESS2>\",\n                \"allow_bank_transfer\": false,\n                \"allow_trial_creation\": false,\n                \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n                \"billingplan\": 1,\n                \"city\": \"<CITY>\",\n                \"country\": \"<COUNTRY>\",\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"credits_code_id\": null,\n                \"currency_id\": null,\n                \"customer_id\": null,\n                \"customer_support_email\": \"<EMAIL>\",\n                \"customer_type\": null,\n                \"deactivation_date\": null,\n                \"deleted_at\": null,\n                \"demo\": false,\n                \"demo_end\": null,\n                \"demo_start\": null,\n                \"discount\": null,\n                \"financeemail\": [],\n                \"fixed_recurring\": 1,\n                \"fraud_risk_score\": 1,\n                \"hs_object_id\": null,\n                \"invoice_type\": \"<INVOICE_TYPE>\",\n                \"minimum_recurring\": 1,\n                \"otp_type\": null,\n                \"paid\": 1,\n                \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n                \"phone\": \"<PHONE>\",\n                \"postcode\": \"<POSTCODE>\",\n                \"report_frequency\": \"<REPORT_FREQUENCY>\",\n                \"requested\": null,\n                \"resource_pool\": null,\n                \"status\": 1,\n                \"supportemail\": \"<EMAIL>\",\n                \"tax_id\": 1,\n                \"taxed\": 1,\n                \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n                \"tenantname\": \"<TENANTNAME>\",\n                \"trial\": false,\n                \"trial_end\": \"<TRIAL_END>\",\n                \"trial_start\": null,\n                \"type\": 1,\n                \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n                \"upgrade_modal_active\": 1,\n                \"withhold_invoices\": 1\n            },\n            \"timezone\": \"<TIMEZONE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ]\n}"}],"_postman_id":"56e94894-1e0d-402f-b6b9-32a26dc7cfd3"},{"name":"Delete monitoring email","id":"5304aa34-9b38-4b29-b4f3-62492c8c4eac","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitoring/email/<USER_ID>","description":"<p>Use this endpoint to remove a custom email address from the monitoring notifications of a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitoring","email","<USER_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"5304aa34-9b38-4b29-b4f3-62492c8c4eac"},{"name":"Create alert rule","id":"ecd64937-b370-4742-956a-41e9718173cd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"compare\": \"less\",\n    \"value\": 2,\n    \"virtualMachineMonitoringId\": 785\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/alertRules","description":"<p>Use this endpoint to create a monitoring alert rule for a device.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>compare</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>value</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>virtualMachineMonitoringId</code></td>\n<td><em>number</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","alertRules"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"1181f994-82c7-478c-b8ea-668139583bc9","name":"Create alert rule","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"compare\": \"less\",\n    \"value\": 2,\n    \"virtualMachineMonitoringId\": 785\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/alertRules","description":"Use this endpoint to create a monitoring alert rule for a device.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `compare` | _string_ |\n| `value` | _number_ |\n| `virtualMachineMonitoringId` | _number_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"<MESSAGE>\",\n    \"rule\": {\n        \"compare\": \"<COMPARE>\",\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"value\": 1,\n        \"virtual_machine_monitoring_id\": 1,\n        \"vms_id\": 1\n    }\n}"}],"_postman_id":"ecd64937-b370-4742-956a-41e9718173cd"},{"name":"Update alert rule","id":"a86e1b32-0267-4376-b913-495743343bd0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"value\": 17\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/alertRules/<ALERT_RULE_ID>","description":"<p>Use this endpoint to update a monitoring alert rule.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>value</code></td>\n<td><em>number</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","alertRules","<ALERT_RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"31078986-befe-4ad0-ad51-4d7a4210c12b","name":"Update alert rule","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"value\": 17\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/alertRules/<ALERT_RULE_ID>","description":"Use this endpoint to update a monitoring alert rule.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `value` | _number_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"<MESSAGE>\",\n    \"rule\": {\n        \"compare\": \"<COMPARE>\",\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"value\": 1,\n        \"virtual_machine_monitoring\": {\n            \"active\": 1,\n            \"id\": 1,\n            \"monitoring_id\": 1,\n            \"vms_id\": 1\n        },\n        \"virtual_machine_monitoring_id\": 1,\n        \"vms\": {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"failure_reason\": null,\n            \"hv_system\": {},\n            \"hv_system_id\": 1,\n            \"hv_type\": \"<HV_TYPE>\",\n            \"is_restoring\": null,\n            \"iso_mounted\": null,\n            \"localvmid\": \"<LOCALVMID>\",\n            \"monitoring\": 1,\n            \"notes\": \"<NOTES>\",\n            \"service_cluster_type\": null,\n            \"service_id\": null,\n            \"serviceuser_lastchecked\": null,\n            \"serviceuser_status\": 1,\n            \"state\": 1,\n            \"template_id\": 1,\n            \"tenant\": {\n                \"account_manager\": null,\n                \"active\": false,\n                \"address\": \"<ADDRESS>\",\n                \"address2\": \"<ADDRESS2>\",\n                \"allow_bank_transfer\": false,\n                \"allow_trial_creation\": false,\n                \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n                \"billingplan\": 1,\n                \"city\": \"<CITY>\",\n                \"country\": \"<COUNTRY>\",\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"credits_code_id\": null,\n                \"currency_id\": null,\n                \"customer_id\": null,\n                \"customer_support_email\": \"<EMAIL>\",\n                \"customer_type\": null,\n                \"deactivation_date\": null,\n                \"deleted_at\": null,\n                \"demo\": false,\n                \"demo_end\": null,\n                \"demo_start\": null,\n                \"discount\": null,\n                \"financeemail\": [],\n                \"fixed_recurring\": 1,\n                \"fraud_risk_score\": 1,\n                \"hs_object_id\": null,\n                \"invoice_type\": \"<INVOICE_TYPE>\",\n                \"minimum_recurring\": 1,\n                \"otp_type\": null,\n                \"paid\": 1,\n                \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n                \"phone\": \"<PHONE>\",\n                \"postcode\": \"<POSTCODE>\",\n                \"report_frequency\": \"<REPORT_FREQUENCY>\",\n                \"requested\": null,\n                \"resource_pool\": null,\n                \"status\": 1,\n                \"supportemail\": \"<EMAIL>\",\n                \"tax_id\": 1,\n                \"taxed\": 1,\n                \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n                \"tenantname\": \"<TENANTNAME>\",\n                \"trial\": false,\n                \"trial_end\": \"<TRIAL_END>\",\n                \"trial_start\": null,\n                \"type\": 1,\n                \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n                \"upgrade_modal_active\": 1,\n                \"withhold_invoices\": 1\n            },\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"user_id\": 1,\n            \"vdc_service_type\": 1,\n            \"vmdisplayname\": \"<VMDISPLAYNAME>\",\n            \"vmhostname\": \"<VMHOSTNAME>\"\n        },\n        \"vms_id\": 1\n    }\n}"}],"_postman_id":"a86e1b32-0267-4376-b913-495743343bd0"},{"name":"Delete alert rule","id":"560260a6-51e6-4a5a-8a78-28dc1afa91dc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/alertRules/<ALERT_RULE_ID>","description":"<p>Use this endpoint to delete a monitoring alert rule.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","alertRules","<ALERT_RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"560260a6-51e6-4a5a-8a78-28dc1afa91dc"},{"name":"Toggle device monitoring","id":"986d4c5e-f07b-4a67-b7b3-e57b0af87587","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"monitorings\": {\n        \"1\": {\n            \"active\": false\n        },\n        \"2\": {\n            \"active\": true,\n            \"deleteAlerts\": false\n        },\n        \"3\": {\n            \"active\": true,\n            \"deleteAlerts\": false\n        },\n        \"4\": {\n            \"active\": false,\n            \"deleteAlerts\": false\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/toggle","description":"<p>Use this endpoint to switch the monitoring of a device on or off.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>monitorings</code></td>\n<td><em>object</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitorings","toggle"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"986d4c5e-f07b-4a67-b7b3-e57b0af87587"},{"name":"Disable device monitoring","id":"e8b3d06b-9fcd-4540-8a3c-a2ea400a8f85","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/monitorings/disable","description":"<p>Use this endpoint to disable monitoring for a device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","monitorings","disable"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"e8b3d06b-9fcd-4540-8a3c-a2ea400a8f85"}],"id":"3b1834d1-0821-4bcb-8b17-465dadea9dc6","_postman_id":"3b1834d1-0821-4bcb-8b17-465dadea9dc6","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}}],"id":"4bf40e11-fd85-4ef0-bf30-7e2e02e9a2a8","description":"<p>Xelon HQ allows you to <a href=\"https://www.xelon.ch/docs/linux-windows-overview\">manage devices</a> and lots of device-specific configurations.</p>\n<p>The essential parameter for operating devices is <code>localvmid</code> — you can find it through a <strong>Get device info</strong> endpoint below.</p>\n<blockquote>\n<p>Sometimes we use the word 'servers' when talking about devices, and vice versa.</p>\n</blockquote>\n<h3 id=\"available-os-platforms\">Available OS platforms</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>NUMBER</strong></th>\n<th><strong>SERVER</strong></th>\n<th><strong>OS</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>10027</code></td>\n<td><code>Linux</code></td>\n<td>CentOS 7 64 bit EN</td>\n</tr>\n<tr>\n<td><code>10028</code></td>\n<td><code>Linux</code></td>\n<td>Ubuntu 18.04 LTS 64 bit EN</td>\n</tr>\n<tr>\n<td><code>10079</code></td>\n<td><code>Linux</code></td>\n<td>Ubuntu 20.04 64 bit EN</td>\n</tr>\n<tr>\n<td><code>10148</code></td>\n<td><code>Linux</code></td>\n<td>AlmaLinux 8 64 bit EN</td>\n</tr>\n<tr>\n<td><code>10188</code></td>\n<td><code>Linux</code></td>\n<td>Debian 11.2</td>\n</tr>\n<tr>\n<td><code>10029</code></td>\n<td><code>Windows</code></td>\n<td>Windows Server 2019 EN Std</td>\n</tr>\n<tr>\n<td><code>10030</code></td>\n<td><code>Windows</code></td>\n<td>Windows Server 2016 EN Std</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"device-configuration-limitations\">Device configuration limitations</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Limitation</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cpuvalue</code></td>\n<td>Min: 1; Max: 12</td>\n</tr>\n<tr>\n<td><code>ramvalue</code></td>\n<td>Min:1; Max: 128</td>\n</tr>\n<tr>\n<td><code>swapdisksize</code></td>\n<td>Min: 1; Max: 20</td>\n</tr>\n<tr>\n<td><code>disksize</code></td>\n<td>Min: 5; Max: 2048</td>\n</tr>\n</tbody>\n</table>\n</div>","event":[{"listen":"prerequest","script":{"id":"46e353da-68fe-4679-b95b-520134d28d52","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"28fcc260-525a-4b7d-bbe4-73411927c98b","type":"text/javascript","exec":[""]}}],"_postman_id":"4bf40e11-fd85-4ef0-bf30-7e2e02e9a2a8","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Templates, ISOs, and Scripts","item":[{"name":"Scripts","item":[{"name":"Add script","id":"45337c94-7bb4-49eb-bf09-971de7e5534c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\"scriptname\":\"some-script\",\n\"scripttype\":\"powershell\",\n\"scriptcode\":\"HERE-GOES-YOUR-SCRIPT-CODE\"\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/addscript","description":"<p>Creates new script with a unique <code>scriptid</code>. A <code>200</code> response retrieves your new <code>scriptid</code> and <code>scriptname</code>.</p>\n<p>For <code>scripttype</code>, use <code>powershell</code> for <strong>Windows Powershell Script</strong> and <code>bash</code> for <strong>Linux /bin/bash</strong> script.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","templates","addscript"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"eaee2c0e-971c-4f11-8086-c154c4ba5f06","name":"Add script","originalRequest":{"method":"POST","header":[{"key":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\"scriptname\":\"some-script\",\n\"scripttype\":\"powershell\",\n\"scriptcode\":\"HERE-GOES-YOUR-SCRIPT-CODE\"\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/addscript"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:22:02 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=YKHBJuMhDM1ISgmElk2EMXnQVQUkruCeoD3DBb5i87%2Fub0E2quDTTFl4ljVn7VEJhPBNFa8V29loyX2d2O6uKWu9W6yI7%2FgocKtMaIDKAnt0tOKA4zIjnNcNk2pNrg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed768891a5378a5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Script has been created\",\n    \"script\": {\n        \"scriptid\": 123456,\n        \"scriptname\": \"some-script\"\n    }\n}"}],"_postman_id":"45337c94-7bb4-49eb-bf09-971de7e5534c"},{"name":"Edit script","id":"7af924f6-b383-46d3-a36b-cf848efaaa03","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"id\":157,\n\"name\":\"edited-script\",\n\"script\":\"HERE-GOES-YOUR-NEW-EDITED-SCRIPT\",\n\"scripttype\":\"powershell\"\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/editscript","description":"<p>This endpoint allows you to edit scripts type, content, and name. To do it, put in the request body a new <code>name</code>, <code>script</code>, or <code>scripttype</code> , and the <code>id</code> of a script you want to change.</p>\n<p>For <code>scripttype</code>, use <code>powershell</code> for <strong>Windows Powershell Script</strong> and <code>bash</code> for <strong>Linux /bin/bash</strong> script.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","templates","editscript"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"3e329324-1f32-485c-87ce-860c35ee4225","name":"Edit script","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"id\":157,\n\"name\":\"edited-script\",\n\"script\":\"HERE-GOES-YOUR-NEW-EDITED-SCRIPT\",\n\"scripttype\":\"powershell\"\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/editscript"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:23:02 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=bHMoZipOW3YEkpqW81N0CyEqTdUbtaaA6tx24nHRWjbub0luRUXHOmy4IFOq4KelOyYdidh5HFwWteEyaOG7%2FHwfZBYVL%2BZljRtH2BlOAkRh24UAxkpz2%2BzmS3tR0A%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed76a00eab478a5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Script has been updated!\"\n}"}],"_postman_id":"7af924f6-b383-46d3-a36b-cf848efaaa03"},{"name":"Delete script","id":"833e8fee-c014-4568-8192-359d385d75df","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\"deletescriptid\": 1234\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/scripts/{scriptId}","description":"<p>Deletes a script by its <code>scriptid</code> which can be found in <code>script.scriptid</code>.</p>\n<blockquote>\n<p>A <code>deletescriptid</code> parameter should equal a <code>scriptid</code> you want to delete.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","scripts","{scriptId}"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"9f64b99b-054b-4d4d-a7e8-373b3f9eb864","name":"Delete script","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\"deletescriptid\": 1234\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/scripts/{scriptId}"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 13:03:22 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=y8oYSAe5Du7xF7h96tphrgz47ajuBe1vPzPxIMbwUvbko%2Bis%2FglxdVQo9Ml%2FM4PIiEW5AtXV3Dp1VQ5zKDlCAv%2FQ1T7yqWjcksmNNrcWVnOvdkbMlNARQbcp60nQEg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ede2affdc4e77ef-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Script deleted successfully.\"\n}"}],"_postman_id":"833e8fee-c014-4568-8192-359d385d75df"},{"name":"Run script on existing device","id":"37c1a69a-6eaa-49f0-b84e-def49362e502","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"scriptid\": 1234,\n    \"customscript_params\": \"<CUSTOMSCRIPT_PARAMS>\",\n    \"ostype\": \"<OS_TYPE>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/script","description":"<p>Use this endpoint to run a script (by its <code>scriptid</code> in the request body) on an existing device.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","script"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"bbab297a-b8f1-4027-ae06-503fa4428f10","name":"Run script on existing device","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\"scriptid\": 1234\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/script"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 10:24:19 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=YAhJSoJt6n5p4yOiW2okhpjYSCTGmaXFjnvq8sRhTVcci20fWYPQfpfi1A%2Fpl76NGN6y%2F4VJ%2Bt3TZo9RqSog%2FIWVbPxkLmHwjcVrvUBtBvQo2qExJZoNc%2B5%2BTnsRF30%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170700939a177ec-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Linux script has been initiated.\"\n}"}],"_postman_id":"37c1a69a-6eaa-49f0-b84e-def49362e502"},{"name":"Get scripts from existing device","event":[{"listen":"test","script":{"id":"df2f85c2-809d-410e-bcde-a2c3abed62cb","exec":[""],"type":"text/javascript"}}],"id":"6349ac02-53fc-4491-804c-a3356bde99a9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/script","description":"<p>Use this endpoint to get the list for all scrips running on a specified device. A 200 response retrieves an array that constists of <code>scriptid</code> and <code>scriptname</code> of all scripts running on the selected machine.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","script"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"138f375c-fea6-4c88-a28f-eb8a04a7c7a4","name":"Get scripts from existing device","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/script"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 10:24:46 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=%2FGQb%2FgycXPgizYZXAzVynq%2Brm6JNxrwI2fr4h0MNwE71N0E14rGBD4mZxAJ%2Bkaeopt%2BkeqflQR5KFKZx7XwB3iSjgTymtwQ4Nu5xtOGO26pDvfZ5NVfBxo7%2B%2Bp9Yx18%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"717070b0789977ec-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"scriptid\": 123,\n        \"scriptname\": \"Script Name\"\n    }\n]"}],"_postman_id":"6349ac02-53fc-4491-804c-a3356bde99a9"},{"name":"Run scripts on devices","id":"735f5378-54d2-41ac-9659-d5d7345a3af8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"script_id\": \"<SCRIPT_ID>\",\n    \"vm_ids\": [\n        \"<VM_IDS>\"\n    ],\n    \"script_params\": {},\n    \"script_args\": \"<SCRIPT_ARGS>\",\n    \"ostype\": \"<OS_TYPE>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/scripts/run","description":"<p>Use this endpoint to run scripts on one or several devices.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>script_id</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>vm_ids</code></td>\n<td><em>array</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","scripts","run"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"a17a48be-c4d4-4b10-bb03-ef5b35e5b1b0","name":"Run scripts on devices","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"script_id\": \"<SCRIPT_ID>\",\n    \"vm_ids\": [\n        \"<VM_IDS>\"\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/scripts/run","description":"Use this endpoint to run scripts on one or several devices.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `script_id` | _string_ |\n| `vm_ids` | _array_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"<MESSAGE>\"\n}"}],"_postman_id":"735f5378-54d2-41ac-9659-d5d7345a3af8"}],"id":"ee940077-063e-40f3-99ae-6eb9b2df9ba7","description":"<p>Each created script has its own unique <code>scriptid</code>. To delete them, use the <code>deletescriptid</code> body parameter which equals <code>scriptid</code>.</p>\n<p>For <code>scripttype</code>, use <code>powershell</code> for <strong>Windows Powershell Script</strong> and <code>bash</code> for <strong>Linux /bin/bash</strong> script.</p>\n","_postman_id":"ee940077-063e-40f3-99ae-6eb9b2df9ba7","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Templates","item":[{"name":"Create new template from device","id":"49940e85-6a17-48ce-8223-2da130a2b033","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"device\": \"<VM_ID>\",\n\t\"templatedesc\": \"description\",\n\t\"templatename\": \"test-template\",\n\t\"tenant\": {\n\t\t\"label\": \"Organization Label\",\n\t\t\"value\": \"Organization Name\"\n\t}\n}"},"url":"https://vdc.xelon.ch/api/service/templates/addtemplate","description":"<p>This endpoint creates a custom template from the specified device.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>device</code></td>\n<td>Device's <code>localvmid</code>.</td>\n</tr>\n<tr>\n<td><code>templatedesc</code></td>\n<td>Template description.</td>\n</tr>\n<tr>\n<td><code>templatename</code></td>\n<td>Template display name.</td>\n</tr>\n<tr>\n<td><code>tenant.label</code></td>\n<td>Organization label.</td>\n</tr>\n<tr>\n<td><code>tenant.value</code></td>\n<td>Organization name.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","templates","addtemplate"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"903d17bf-ff8c-4500-8324-af17f4fcfeb0","name":"Create new template from device","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"device\": \"<VM_ID>\",\n\t\"templatedesc\": \"description\",\n\t\"templatename\": \"test-template\",\n\t\"tenant\": {\n\t\t\"label\": \"Organization Label\",\n\t\t\"value\": \"Organization Name\"\n\t}\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/templates/addtemplate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 10:25:01 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"x-ratelimit-limit","value":"1"},{"key":"x-ratelimit-remaining","value":"0"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=6mJQNLNT1jD7GFDX8nNBbQMIyTKWD%2F1HVU36BiNqLhB0xAmZgmQH6bfgoZVMaikYadnpbDQK80QqNd%2FOLveq%2FblxmLlNFEaVRFfzMCKR7iilgB%2F4UENvLZqJGVbS%2Bec%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170710c7ef377ec-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Template has been created.\"\n}"}],"_postman_id":"49940e85-6a17-48ce-8223-2da130a2b033"},{"name":"Delete template","id":"582781db-90ee-4444-b27d-efbdb011ef9f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"deletetemplateid\": 12345\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/deletetemplate","description":"<p>This endpoint deletes a specific template by its <code>templateid</code>. You can get <code>templateid</code> as a <code>templates_custom.object.id</code> value from the <strong>List of templates, scripts and ISOs</strong> endpoint below.</p>\n<blockquote>\n<p>Within the request body, <code>deletetemplateid</code> should equal the <code>templateid</code> of a template you want to delete.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","templates","deletetemplate"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"d0ac3307-61f3-4ceb-bae4-24f296022472","name":"Delete template","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"deletetemplateid\": 12345\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/deletetemplate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:34:24 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=szIM0Yo5WmFskZyHO7XMitxkQ7i0iNKlWHezWv0vfdb%2BkRK69iMC3rzXlt2t2z8fsi7V4X4Ce6lZAKRu%2F8xUxGMf5GcNNGmnd1PC4VUE6zoAREfVc5SgyzG6kSn2wg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed77aa6bed078a5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Template has been deleted.\"\n}"}],"_postman_id":"582781db-90ee-4444-b27d-efbdb011ef9f"}],"id":"4240c826-cf76-49a5-a848-49693a739a02","description":"<p>Each created template has its own unique <code>templateid</code>. To delete them, use the <code>deletetemplateid</code> body parameter which equals <code>templateid</code>.</p>\n","_postman_id":"4240c826-cf76-49a5-a848-49693a739a02","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"ISOs","item":[{"name":"Add custom ISO","id":"532fc797-8da6-45f4-83ae-80a50d6b6a5e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"category_id\": 7,\n    \"isodescr\": \"Custom iso description.\",\n    \"isoname\": \"customly-added-iso\",\n    \"isourl\": \"https://dl-cdn.alpinelinux.org/alpine/v3.15/releases/x86/alpine-standard-3.15.1-x86.iso\",\n    \"cloudId\": \"<CLOUD_ID>\",\n    \"description\": \"<ISO_DESCRIPTION>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/uploadiso","description":"<p>This endpoint adds a custom ISO from the specific URL.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>category_id</code></td>\n<td>ISO category. See the table below for more details.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>isodescr</code></td>\n<td>A description for your ISO.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>isoname</code></td>\n<td>A name of your ISO.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>isourl</code></td>\n<td>The URL of an ISO you want to upload.</td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"iso-categories-list\">ISO Categories List</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>category_id</code></strong></th>\n<th><strong>OS</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>1</code></td>\n<td>Windows Server 2016/2019</td>\n</tr>\n<tr>\n<td><code>2</code></td>\n<td>Debian</td>\n</tr>\n<tr>\n<td><code>3</code></td>\n<td>CentOS</td>\n</tr>\n<tr>\n<td><code>4</code></td>\n<td>Ubuntu</td>\n</tr>\n<tr>\n<td><code>5</code></td>\n<td>RHEL</td>\n</tr>\n<tr>\n<td><code>6</code></td>\n<td>FreeBSD</td>\n</tr>\n<tr>\n<td><code>7</code></td>\n<td>Other Linux</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","templates","uploadiso"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"d16be029-4ed8-4833-8bfb-55f53db72420","name":"Add custom ISO","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"category_id\": 7,\n\t\"isodescr\": \"Custom iso description.\",\n\t\"isoname\": \"customly-added-iso\",\n\t\"isourl\": \"https://dl-cdn.alpinelinux.org/alpine/v3.15/releases/x86/alpine-standard-3.15.1-x86.iso\",\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/uploadiso"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:39:46 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=NFJijUDZCptGAEMh7hmT%2FOcXytnD8MleHiguKWdT300LiUTSsSMi5mLkVbO9PRmWUT5nfE2XM7rm4Bnb0li1azxbH1YHM5UL5NUDddueTr2wL66UBySOjaoQhPjBrQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed78279caf178a5-VIE"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n     \"message\": \"Uploading ISO file. It may take a few minutes.\"\n}"}],"_postman_id":"532fc797-8da6-45f4-83ae-80a50d6b6a5e"},{"name":"Delete ISO","id":"25cdfac0-5fe6-49cb-93a0-834280239af6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"deleteisoid\": 1234\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/deleteiso","description":"<p>Use this endpoint to delete a custom ISO by entering its ID to a <code>deleteisoid</code> parameter.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","templates","deleteiso"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"af53958f-899c-4a19-8f25-8b2d8edc02bd","name":"Delete ISO","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"deleteisoid\": 1234\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/templates/deleteiso"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[""],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"ISO has been deleted!\"\n}"}],"_postman_id":"25cdfac0-5fe6-49cb-93a0-834280239af6"}],"id":"8460b6de-23d1-43b2-9d68-c336b367f49c","description":"<p>Within the platform, ISOs can be either <strong>standard</strong> or <strong>custom</strong>. Each ISO has it's own unique ID by which you can delete it through the endpoint below.</p>\n<p>When deleting a custom ISO, <code>deleteisoid</code> must equal <code>iso_custom.id</code>.</p>\n","_postman_id":"8460b6de-23d1-43b2-9d68-c336b367f49c","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"List of templates, scripts and ISOs","event":[{"listen":"test","script":{"id":"a72f0d25-a5c6-48b4-9b66-0240dda9ffde","exec":[""],"type":"text/javascript","packages":{}}}],"id":"172fadfd-b192-423d-b5db-6d6b3b0a5075","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/templates/","description":"<p>This endpoint allows you to see all the templates, scripts, and ISOs within your organization.</p>\n<blockquote>\n<p>If you want to see the <code>scripts_custom</code> array, enter a tenant_id at the end of ther request; it should look like <code>https://vdc.xelon.ch/api/service/templates/</code> </p>\n</blockquote>\n<p>It retrieves an array of:</p>\n<ul>\n<li><p>Standard templates (<code>templates_standard</code>)</p>\n</li>\n<li><p>Custom templates (<code>templates_custom</code>)</p>\n</li>\n<li><p>Devices (<code>devicelist</code>)</p>\n</li>\n<li><p>Custom scripts (<code>scripts_custom</code>) (only if <code>tenant_id</code> is at the end of the query)</p>\n</li>\n<li><p>Standard ISOs (<code>iso_standard</code>)</p>\n</li>\n<li><p>Custom ISOs (<code>iso_custom</code>)</p>\n</li>\n</ul>\n<blockquote>\n<p>Use this endpoint to get the template, script, and ISO IDs.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","templates",""],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"2e2b1eb9-63b2-4e8c-a189-bccd9b17ba98","name":"List of templates, scripts and ISOs","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/templates/<TENANT_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:47:31 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=t24tUjTNXgxaySQEbmaRIhuAOUCOWTnBra%2F2vkK4lf2hUC1nhxJcw%2B19otk4j2I7Sq33nnyGmYr%2FXcm%2Bo9H9DTXQo%2BOBV71hrxJ4LxNxfO1zhER3jqQHvu8iIG5EBw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed78ddfbe657801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"scripts_custom\": [\n        {\n            \"id\": 71,\n            \"created_at\": \"2022-03-17T18:47:31+01:00\",\n            \"name\": \"jenkins80\",\n            \"script\": \"curl -X POST <REQUEST_GOES_HERE>\",\n            \"active\": 1,\n            \"scripttype\": \"bash\",\n            \"deleted_at\": null,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"devicelist\": [\n        {\n            \"vmDisplayName\": \"Device Display Name\",\n            \"vmHostName\": \"device-hostname\",\n            \"localVmId\": \"<VM_ID>\",\n            \"tenantIdentifier\": \"<TENANT_ID>\",\n            \"tenantName\": \"Organization Name\"\n        }\n    ],\n    \"templates_standard\": [\n        {\n            \"id\": 1234,\n            \"created_at\": \"2022-03-17T18:47:31+01:00\",\n            \"name\": \"Template name\",\n            \"description\": \"Template description\",\n            \"active\": 1,\n            \"status\": 1,\n            \"templatetype\": 1,\n            \"scripttype\": null,\n            \"nic_count_min\": 1,\n            \"nic_count_max\": 5,\n            \"hdd_minsize_gb\": null,\n            \"has_swap\": 1,\n            \"allowed_setpwd\": 0,\n            \"allowed_setdisk\": 0,\n            \"allowed_update_ip_guest\": 0,\n            \"allowed_resize_existing_partition\": 0,\n            \"has_serviceuser\": 0,\n            \"type\": \"Barracuda\",\n            \"category\": \"Firewall\",\n            \"hv_type\": \"public\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"deleted_at\": null,\n            \"hddunit\": 1,\n            \"hv_system\": {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"display_name\": \"<DISPLAY_NAME>\",\n                \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n                \"hv_type\": \"<HV_TYPE>\",\n                \"id\": 1,\n                \"identifier\": \"<IDENTIFIER>\",\n                \"main_cloud\": 1,\n                \"type\": 1,\n                \"version\": 1\n            },\n            \"identifier\": \"<IDENTIFIER>\",\n            \"instructions\": \"<INSTRUCTIONS>\",\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp_id\": 1,\n            \"swapunit\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ],\n    \"iso_standard\": [\n        {\n            \"id\": 12345,\n            \"created_at\": \"2021-11-29T16:00:01+01:00\",\n            \"name\": \"ISO Name\",\n            \"description\": null,\n            \"source_path\": \"<SOURCE_PATH>\",\n            \"path\": \"<PATH>\",\n            \"category_id\": 1,\n            \"active\": 1,\n            \"status\": 1,\n            \"isotype\": 1,\n            \"hv_type\": \"public\",\n            \"deleted_at\": null,\n            \"hv_system_id\": 1,\n            \"owner_tenant\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"iso_custom\": [\n        {\n            \"id\": 12345,\n            \"created_at\": \"2019-02-13T16:16:05+01:00\",\n            \"name\": \"ISO Name\",\n            \"description\": \"Description\",\n            \"source_path\": \"<SOURCE_PATH>\",\n            \"path\": \"<PATH>\",\n            \"category_id\": null,\n            \"active\": 1,\n            \"status\": 1,\n            \"isotype\": 2,\n            \"hv_type\": \"public\",\n            \"deleted_at\": null,\n            \"hv_system_id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"templates_custom\": [\n        {\n            \"active\": 1,\n            \"allowed_resize_existing_partition\": 1,\n            \"allowed_setdisk\": 1,\n            \"allowed_setpwd\": 1,\n            \"allowed_update_ip_guest\": 1,\n            \"category\": \"<CATEGORY>\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"has_serviceuser\": 1,\n            \"has_swap\": 1,\n            \"hdd_minsize_gb\": 1,\n            \"hddunit\": 1,\n            \"hv_system\": {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"display_name\": \"<DISPLAY_NAME>\",\n                \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n                \"hv_type\": \"<HV_TYPE>\",\n                \"id\": 1,\n                \"identifier\": \"<IDENTIFIER>\",\n                \"main_cloud\": 1,\n                \"type\": 1,\n                \"version\": 1\n            },\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"instructions\": \"<INSTRUCTIONS>\",\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"name\": \"<NAME>\",\n            \"nic_count_max\": 1,\n            \"nic_count_min\": 1,\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp_id\": 1,\n            \"scripttype\": \"<SCRIPTTYPE>\",\n            \"status\": 1,\n            \"swapunit\": 1,\n            \"templatetype\": 1,\n            \"type\": \"<TYPE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ]\n}"}],"_postman_id":"172fadfd-b192-423d-b5db-6d6b3b0a5075"},{"name":"List of templates, scripts and ISOs of an organization","id":"a8b1d0ab-76c9-4a90-9a51-f0a930eba108","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/templates/<TENANT_ID>?hvId=<CLOUD_ID>","description":"<p>Use this endpoint to get templates, scripts and ISOs available to the specified organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","templates","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[{"key":"hvId","value":"<CLOUD_ID>"}],"variable":[]}},"response":[{"id":"475d8a01-89d3-4ad3-9318-a5cfc5fc35dd","name":"List of templates, scripts and ISOs of an organization","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/templates/<TENANT_ID>","description":"Use this endpoint to get templates, scripts and ISOs available to the specified organization."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"iso_custom\": [\n        {\n            \"active\": 1,\n            \"category_id\": 1,\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"hv_system_id\": 1,\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"isotype\": 1,\n            \"name\": \"<NAME>\",\n            \"path\": \"<PATH>\",\n            \"source_path\": \"<SOURCE_PATH>\",\n            \"status\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"iso_standard\": [\n        {\n            \"active\": 1,\n            \"category_id\": 1,\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"hv_system_id\": 1,\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"isotype\": 1,\n            \"name\": \"<NAME>\",\n            \"owner_tenant\": 1,\n            \"path\": \"<PATH>\",\n            \"source_path\": \"<SOURCE_PATH>\",\n            \"status\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"scripts_custom\": [\n        {\n            \"active\": 1,\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"id\": 1,\n            \"name\": \"<NAME>\",\n            \"script\": \"<SCRIPT>\",\n            \"scripttype\": \"<SCRIPTTYPE>\",\n            \"tenantid\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"templates_custom\": [\n        {\n            \"active\": 1,\n            \"allowed_resize_existing_partition\": 1,\n            \"allowed_setdisk\": 1,\n            \"allowed_setpwd\": 1,\n            \"allowed_update_ip_guest\": 1,\n            \"category\": \"<CATEGORY>\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"has_serviceuser\": 1,\n            \"has_swap\": 1,\n            \"hdd_minsize_gb\": 1,\n            \"hddunit\": 1,\n            \"hv_system\": {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"display_name\": \"<DISPLAY_NAME>\",\n                \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n                \"hv_type\": \"<HV_TYPE>\",\n                \"id\": 1,\n                \"identifier\": \"<IDENTIFIER>\",\n                \"main_cloud\": 1,\n                \"type\": 1,\n                \"version\": 1\n            },\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"instructions\": null,\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"name\": \"<NAME>\",\n            \"nic_count_max\": 1,\n            \"nic_count_min\": 1,\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp_id\": 1,\n            \"scripttype\": \"<SCRIPTTYPE>\",\n            \"status\": 1,\n            \"swapunit\": 1,\n            \"templatetype\": 1,\n            \"type\": \"<TYPE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ],\n    \"templates_standard\": [\n        {\n            \"active\": 1,\n            \"allowed_resize_existing_partition\": 1,\n            \"allowed_setdisk\": 1,\n            \"allowed_setpwd\": 1,\n            \"allowed_update_ip_guest\": 1,\n            \"category\": \"<CATEGORY>\",\n            \"cloud_init_type\": \"<CLOUD_INIT_TYPE>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"description\": \"<DESCRIPTION>\",\n            \"has_serviceuser\": 1,\n            \"has_swap\": 1,\n            \"hdd_minsize_gb\": 1,\n            \"hddunit\": 1,\n            \"hv_system\": {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"display_name\": \"<DISPLAY_NAME>\",\n                \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n                \"hv_type\": \"<HV_TYPE>\",\n                \"id\": 1,\n                \"identifier\": \"<IDENTIFIER>\",\n                \"main_cloud\": 1,\n                \"type\": 1,\n                \"version\": 1\n            },\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"instructions\": \"<INSTRUCTIONS>\",\n            \"internal_version\": \"<INTERNAL_VERSION>\",\n            \"name\": \"<NAME>\",\n            \"nic_count_max\": 1,\n            \"nic_count_min\": 1,\n            \"nicdescr\": \"<NICDESCR>\",\n            \"nicunit\": 1,\n            \"power_on\": false,\n            \"reg_exp_id\": 1,\n            \"scripttype\": \"<SCRIPTTYPE>\",\n            \"status\": 1,\n            \"swapunit\": 1,\n            \"templatetype\": 1,\n            \"type\": \"<TYPE>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vmdk_id\": \"<VMDK_ID>\",\n            \"vmdk_swap_id\": \"<VMDK_SWAP_ID>\"\n        }\n    ]\n}"}],"_postman_id":"a8b1d0ab-76c9-4a90-9a51-f0a930eba108"}],"id":"3d99dd3b-6c5d-42ee-8aa1-f7809b4c0a4f","description":"<p>A set of endpoints for custom scripts, templates, and ISOs.</p>\n<h3 id=\"key-concepts\">Key concepts</h3>\n<p>Managing scripts and templates requires a specific field; you can find them below:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Resource ID field</strong></th>\n<th><strong>Where to find</strong></th>\n<th><strong>Resource deletion field</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>scriptid</code></td>\n<td><code>script.scriptid</code></td>\n<td><code>deletescriptid</code></td>\n</tr>\n<tr>\n<td><code>templateid</code></td>\n<td><code>templates_custom.object.id</code></td>\n<td><code>deletetemplateid</code></td>\n</tr>\n<tr>\n<td>—</td>\n<td><code>custom_iso.id</code></td>\n<td><code>deleteisoid</code></td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Pro tip</strong>: Find all the <code>id</code>s within the <code>GET</code> <strong>List of templates, scripts and ISOs</strong> endpoint below.</p>\n","event":[{"listen":"prerequest","script":{"id":"2d9b559b-9f5d-421f-9e78-8bf14a7d1feb","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"7a5cce9d-2b8f-4f1a-84d9-ecb7acba3bfa","type":"text/javascript","exec":[""]}}],"_postman_id":"3d99dd3b-6c5d-42ee-8aa1-f7809b4c0a4f","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"WAN, LAN, and Shared Networks","item":[{"name":"Get list of networks","event":[{"listen":"test","script":{"id":"da23bc33-f2f6-429e-a817-d94bbf35f1b3","exec":[""],"type":"text/javascript"}}],"id":"bfb9b695-417b-437c-a7ae-f1c5feb406a8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks","description":"<p>This endpoint allows you to get a comprehensive list of available networks and subnetworks within the specified organization.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>networks</code></td>\n<td>A list of networks available.</td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>Network's ID.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>Network's display name.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Can be either <code>LAN</code> or <code>WAN</code>.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>assigned</code></td>\n<td>A name of an organization related to this network.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>tenant.tenant_identifier</code></td>\n<td>ID of an organization related to this network.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>subnet</code></td>\n<td>A subnet value for this specific network.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>hv_type</code></td>\n<td>Cloud type, can be either <code>public</code> or <code>private</code>.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>wannetwork_count</code></td>\n<td>Amount of WAN networks within this organization.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>lannetwork_count</code></td>\n<td>Amount of LAN networks within this organization.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>tenantidentifier</code></td>\n<td>TENANT_ID of this organization.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>subnets</code></td>\n<td>Subnets available within this organization.</td>\n<td><em>array</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","networks"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"febe5f22-4049-47e0-a0d9-7166ee4a96fd","name":"Get list of networks","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:03:21 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=dDNPXIol9SObvpvaQiX2rK5UpM4hhclvKn0I8P5%2FV1xGLTXzMzz%2BvKTQJoAoK3BDo%2F%2BGamSeCg4JrXwGX7FVzYjpdRj1lZoIINWGhcGkMr4Xmh3HVw4NZFTgAb%2BBfw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6f5485bc478a3-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"networks\": [\n        {\n            \"id\": 123456,\n            \"name\": \"Another WAN Network\",\n            \"network\": \"1.2.3.4\",\n            \"type\": \"WAN\",\n            \"assigned\": \"Organization Name\",\n            \"tenant\": {\n                \"tenant_identifier\": \"<TENANT_ID>\"\n            },\n            \"subnet\": \"29\",\n            \"hv_type\": \"public\",\n            \"hv_systems\": [\n                {\n                    \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n                    \"id\": 1,\n                    \"type\": 1\n                }\n            ]\n        }\n    ],\n    \"wannetwork_count\": 4,\n    \"lannetwork_count\": 3,\n    \"tenantidentifier\": \"<TENANT_ID>\",\n    \"subnets\": [\n        \"/19\"\n    ]\n}"}],"_postman_id":"bfb9b695-417b-437c-a7ae-f1c5feb406a8"},{"name":"Get networks with IPs","event":[{"listen":"test","script":{"id":"315a3ea0-d6ef-49d9-b3d4-c62d9333fdae","exec":[""],"type":"text/javascript"}}],"id":"c7208fcd-0a45-447e-9163-bc2d26f2df46","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networksWithIps?cloudId=<CLOUD_ID>","description":"<p>This endpoint retrieves a list of networks with their connected IPs, related to a specified organization. Within this endpoint, you can get IP ID (the <code>id</code> value inside an <code>ips</code> array).</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>Network's ID.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Can be either <code>WAN</code> or <code>LAN</code>.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>ips.id</code></td>\n<td>IP ID, an identifier of a specific IP.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>cloudId</code></td>\n<td>(optional) Return only the networks of the given cloud.</td>\n<td><em>integer</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","networksWithIps"],"host":["https://vdc.xelon.ch"],"query":[{"key":"cloudId","value":"<CLOUD_ID>"}],"variable":[]}},"response":[{"id":"fe6b1a55-e4c4-4e18-bee9-967453b3ca53","name":"Get networks with IPs","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networksWithIps"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 10:25:39 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=4K5jQpaIJZjVJjGlBVlshinFMxYcUqs99l%2F6fwQ7iWvHCRI3G0dKUevUQJIwk%2FSpo%2Bnl6a%2BlxCi7Tj7r2g74vcCfwheDfy1%2FL23eSxt0KF7UiWE4Fbf%2FH0qYfYToNBc%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"717071f73b9777ec-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"created_at\": \"2021-05-25T14:29:22+02:00\",\n        \"type\": \"LAN\",\n        \"network\": \"1.2.3.4\",\n        \"subnet\": \"24\",\n        \"broadcast\": \"1.2.3.4\",\n        \"netmask\": \"1.2.3.4\",\n        \"defgw\": \"1.2.3.4\",\n        \"dns1\": \"1.2.3.4\",\n        \"dns2\": \"1.2.3.4\",\n        \"displayname\": \"Display Name\",\n        \"network_speed\": 1000,\n        \"assigned\": \"Organization Name\",\n        \"tenant_identifier\": \"<TENANT_ID>\",\n        \"hv_type\": \"public\",\n        \"ips\": [\n            {\n                \"id\": 123456,\n                \"created_at\": \"2022-06-06T12:25:38+02:00\",\n                \"networkid\": 5678,\n                \"ip\": \"1.2.3.4\",\n                \"default_gateway\": 0\n            }\n        ],\n        \"attached_at\": \"2026-01-01T12:00:00+01:00\",\n        \"id\": 1,\n        \"identifier\": \"<IDENTIFIER>\",\n        \"is_free\": false,\n        \"is_locked\": null,\n        \"is_stretched\": false,\n        \"pivot\": {\n            \"access\": 1,\n            \"networkid\": 1,\n            \"tenant\": 1\n        },\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    }\n]"}],"_postman_id":"c7208fcd-0a45-447e-9163-bc2d26f2df46"},{"name":"Add LAN network","id":"b42eba5f-d7b9-4355-9902-aae6cd6a53ce","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"cloudId\": 1,\n    \"displayname\": \"Display Name\",\n    \"dns1\": \"1.2.3.4\",\n    \"dns2\": \"1.2.3.4\",\n    \"gateway\": \"1.2.3.4\",\n    \"ip_addresses\": \"1.2.3.4-1.2.3.254\",\n    \"network\": \"1.2.3.4\",\n    \"networkSize\": 24\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/addlan","description":"<p>Use this endpoint to create a new LAN network for a specific organization.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cloudId</code></td>\n<td>An ID of a cloud.</td>\n</tr>\n<tr>\n<td><code>dns1</code></td>\n<td>DNS Server 1 address.</td>\n</tr>\n<tr>\n<td><code>dns2</code></td>\n<td>DNS Server 2 address.</td>\n</tr>\n<tr>\n<td><code>displayname</code></td>\n<td>The name of a network.</td>\n</tr>\n<tr>\n<td><code>gateway</code></td>\n<td>Gateway IP address. Example: <code>\"1.2.3.4\"</code></td>\n</tr>\n<tr>\n<td><code>network</code></td>\n<td>Network IP address. Example: <code>\"1.2.3.4\"</code></td>\n</tr>\n<tr>\n<td><code>networkSize</code></td>\n<td>Example: <code>24</code> (<em>Optional</em>)</td>\n</tr>\n<tr>\n<td><code>isStretched</code></td>\n<td>Set to <code>1</code> to create a Stretched LAN network.</td>\n</tr>\n<tr>\n<td><code>cloudForStretching</code></td>\n<td>ID of a cloud for stretching the network.</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Network names (<code>displayname</code>) can be duplicated. Try to avoid similar naming when creating networks. </p>\n</blockquote>\n<h2 id=\"creating-a-stretched-lan-network\">Creating a Stretched LAN network</h2>\n<p>The payload for the Stretched LAN network should always contain two parameters: <code>isStretched</code> and <code>cloudForStretching</code>.</p>\n<p>Also, creating a Stretched network requires the <code>allow_create_stretched_network</code> permission.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","networks","addlan"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"cdbf0f21-cb5f-4d56-ba6a-c4cac1d2aa1c","name":"Add LAN network","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\"cloudId\": 1,\n\"displayname\": \"Display Name\",\n\"dns1\": \"1.2.3.4\",\n\"dns2\": \"1.2.3.4\",\n\"gateway\": \"1.2.3.4\",\n\"network\": \"1.2.3.4\",\n\"networkSize\": 32\n\"networkSpeed\":1000000000\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/addlan"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 12:54:05 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=xnzb63EzI%2FxLnScEGP8ZfOOG1ZjYOL%2FN17bEkoKEjG%2FlzKUD%2FDqqjVT%2FVCmh2ywBDU2YHB7XCJYlAfwOHtoDVvCtc%2BVr5PWgDsi%2B2mJcbDbmpAkt3m8%2FPVpzo0Xikw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ede1d5dda4dcbc8-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Network successfully added.\"\n}"}],"_postman_id":"b42eba5f-d7b9-4355-9902-aae6cd6a53ce"},{"name":"Add WAN network","id":"48092de2-d4f3-472b-907f-99f524777eb5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"cloudId\": 1,\n    \"displayname\": \"Display Name\",\n    \"subnet\": \"/29\"\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/addwan","description":"<p>Use this endpoint to create a new WAN network for a specific organization.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cloudId</code></td>\n<td>An ID of a specific cloud.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>displayname</code></td>\n<td>Network display name.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>subnet</code></td>\n<td>Network's subnet. Example: <code>\"/29\"</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>isStretched</code></td>\n<td>Set to <code>1</code> to create a Stretched WAN network. <em>Not required</em>.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>cloudForStretching</code></td>\n<td>ID of a cloud for stretching the network. <em>Required if you have the</em> <code>_isStretched_</code> <em>parameter</em>.</td>\n<td><em>integer</em></td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Network names (<code>displayname</code>) can be duplicated. Try to avoid similar naming when creating networks. </p>\n</blockquote>\n<h2 id=\"creating-a-stretched-wan-network\">Creating a Stretched WAN network</h2>\n<p>The payload for the Stretched WAN network should always contain three parameters: <code>isStretched</code>, <code>hv_system_id</code> and <code>cloudForStretching</code>.</p>\n<p>Also, creating a Stretched network requires the <code>allow_create_stretched_network</code> permission.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","networks","addwan"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"64a5092a-d506-4a24-9706-67896c9caee4","name":"Add WAN network","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 1,\n\t\"displayname\": \"Display Name\",\n\t\"subnet\": \"/29\",\n    \"isStretched\": 1,\n    \"cloudForStretching\": 2\n    \"networkSpeed\":256000000\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/addwan"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:02:08 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=%2BVv71QrQakp9lxXL%2BiDhlI9sKOJUJURT7dS3C4gTl1GpQOO1cqHww1csIIcfe2BvG24DNGFFsi2RuQifbTzP880Yq%2FREzFYzzSGNYZgY89EQztkGzEXGiIiPmiiVYg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6f380498678a3-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"WAN Network added!\"\n}"}],"_postman_id":"48092de2-d4f3-472b-907f-99f524777eb5"},{"name":"Update network","id":"a1bc2075-cfad-4469-82e6-0f12443b46b0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"defgw\": \"1.2.3.4\",\n\t\"displayname\": \"Display Name\",\n\t\"dns1\": \"1.2.3.4\",\n\t\"dns2\": \"1.2.3.4\",\n\t\"id\": 123456,\n\t\"network\": \"1.2.3.4\",\n\t\"network_speed\": 500000000\n}"},"url":"https://vdc.xelon.ch/api/service/networks/<NETWORK_ID>/update","description":"<p>This endpoint allows you to change or update the configuration of a specific network.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>defgw</code></td>\n<td>Default Gateway IP address.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>displayname</code></td>\n<td>Network's display name.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>dns1</code></td>\n<td>DNS 1 IP address.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>dns2</code></td>\n<td>DNS 2 IP address.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>id</code></td>\n<td>Network's ID.</td>\n<td><em>integer</em></td>\n</tr>\n<tr>\n<td><code>network</code></td>\n<td>Network's IP address.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>network_speed</code></td>\n<td>Network's speed. Can be either 250 (<code>250000000</code>), 500 (<code>500000000</code>), or 1000 (<code>1000000000</code>) Mbit.</td>\n<td>integer</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","networks","<NETWORK_ID>","update"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"d1448ca2-b153-4afd-8c01-810457cb9cbd","name":"Update network","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"defgw\": \"1.2.3.4\",\n\t\"displayname\": \"Display Name\",\n\t\"dns1\": \"1.2.3.4\",\n\t\"dns2\": \"1.2.3.4\",\n\t\"id\": 123456,\n\t\"network\": \"1.2.3.4\",\n\t\"network_speed\": 500000000\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/networks/<NETWORK_ID>/update"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 02 Jun 2022 14:40:36 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=E3NfnvfQN1rq4BiAv37rC1PaHnBJyQtTAJyeGxUqL3Z6WA%2F9%2FP6GF0S09pEHaubDchPsC7m7ladqpKUCJzAwQQNIjvve6b56bJEniaFnZa90ZtbBTd1DUfPgJuD2mpw%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7150f1f1e9f424c5-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Network has been changed!\"\n}"}],"_postman_id":"a1bc2075-cfad-4469-82e6-0f12443b46b0"},{"name":"Show network's info","id":"f4c77e82-3301-416c-ae13-0f18ab38a999","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/<NETWORK_ID>/show","description":"<p>This endpoint retrieves a set of arrays that display the info about a specific network by its <code>id</code> in the URL.</p>\n<blockquote>\n<p>You can find <code>ipid</code> values within the <code>geiplist</code> response array.</p>\n</blockquote>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Array</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>localnetid</code></td>\n<td>A general info about a specific network: its <code>id</code>, networking data, and network <code>speed</code>.</td>\n</tr>\n<tr>\n<td><code>vlan</code></td>\n<td></td>\n</tr>\n<tr>\n<td><code>switch_id</code></td>\n<td></td>\n</tr>\n<tr>\n<td><code>switchid</code></td>\n<td></td>\n</tr>\n<tr>\n<td><code>vdcmanaged</code></td>\n<td></td>\n</tr>\n<tr>\n<td><code>uuid</code></td>\n<td></td>\n</tr>\n<tr>\n<td><code>speed</code></td>\n<td></td>\n</tr>\n<tr>\n<td><code>access</code></td>\n<td></td>\n</tr>\n<tr>\n<td><code>usedips</code></td>\n<td>If <code>1</code>, the array <code>getiplist</code> will show a set of currently used IPs.</td>\n</tr>\n<tr>\n<td><code>getiplist</code></td>\n<td>A list of currently used network IPs.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td></td>\n</tr>\n<tr>\n<td><code>tenants</code></td>\n<td>A list of organizations currently connected to this network.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","networks","<NETWORK_ID>","show"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"45a9a557-aea9-4e04-a613-bcdcfaa2e9dd","name":"Show network's info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/<NETWORK_ID>/show"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 08 Jul 2022 10:19:30 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=WPqXxaZAPziQMeOkVpSZXQVB3qTSTj%2BrlGVhd%2BoILqEWlpTDGbNiQeiIROcDbMElfc4M8gmWss2%2BZPKNthotjXocWzAhhq7rAqS3d30ClMYDT26wZFFm5pbfXPn%2Ff%2FM%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"727814f62ac322f5-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"networksSpeed\": [\n        {\n            \"value\": 250000000,\n            \"label\": \"250Mbit\"\n        },\n        {\n            \"value\": 500000000,\n            \"label\": \"500Mbit\"\n        },\n        {\n            \"value\": 1000000000,\n            \"label\": \"1000Mbit\"\n        },\n        {\n            \"value\": 10000000000,\n            \"label\": \"10000Mbit\"\n        }\n    ],\n    \"localnetid\": {\n        \"id\": 12345,\n        \"created_at\": \"2022-07-08T12:19:30+02:00\",\n        \"type\": \"LAN\",\n        \"network\": \"1.2.3.4\",\n        \"subnet\": \"24\",\n        \"broadcast\": \"1.2.3.4\",\n        \"netmask\": \"1.2.3.4\",\n        \"defgw\": \"1.2.3.4\",\n        \"dns1\": \"1.2.3.4\",\n        \"dns2\": \"1.2.3.4\",\n        \"displayname\": \"display-name\",\n        \"hv_type\": \"public\",\n        \"access\": 1,\n        \"assigned\": \"<ASSIGNED>\",\n        \"attached_at\": \"2026-01-01T12:00:00+01:00\",\n        \"identifier\": \"<IDENTIFIER>\",\n        \"is_free\": false,\n        \"is_locked\": null,\n        \"is_stretched\": false,\n        \"network_speed\": {\n            \"id\": 1,\n            \"network_label\": \"<NETWORK_LABEL>\",\n            \"network_speed\": 1\n        },\n        \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    },\n    \"usedips\": 1,\n    \"getiplist\": [\n        {\n            \"type\": \"virtual_machine\",\n            \"id\": 1234567,\n            \"created_at\": \"2022-07-08T12:19:30+02:00\",\n            \"networkid\": 123456,\n            \"ip\": \"1.2.3.4\",\n            \"iptype\": 4,\n            \"default_gateway\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"is_blacklisted\": 1,\n            \"is_reserved_by_user\": 1,\n            \"local_id\": \"<LOCAL_ID>\",\n            \"localvmid\": \"<LOCALVMID>\",\n            \"nicunit\": 1,\n            \"primary\": 1,\n            \"reserve_description\": null,\n            \"reserved_at\": null,\n            \"state\": 1,\n            \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"vdc_service_type\": null,\n            \"vmdisplayname\": \"<VMDISPLAYNAME>\",\n            \"vmhostname\": \"<VMHOSTNAME>\",\n            \"vmid\": 1\n        }\n    ],\n    \"authTenantId\": 1,\n    \"hvSystemId\": 1,\n    \"tenantidentifier\": \"<TENANTIDENTIFIER>\",\n    \"tenants\": [\n        {\n            \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n            \"tenantname\": \"<TENANTNAME>\"\n        }\n    ]\n}"}],"_postman_id":"f4c77e82-3301-416c-ae13-0f18ab38a999"},{"name":"Get network's devices","event":[{"listen":"test","script":{"id":"64213df0-7f35-4794-9070-31ae7772da32","exec":[""],"type":"text/javascript"}}],"id":"1e575fd5-0ba3-4b70-9c21-f757c48ddca4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/network/<NETWORK_ID>/devices","description":"<p>This endpoint retrieves a list of devices connected to a specific network.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>Device's ID in our database.</td>\n</tr>\n<tr>\n<td><code>vmdisplayname</code></td>\n<td>Display name of a related device.</td>\n</tr>\n<tr>\n<td><code>ip</code></td>\n<td>Network's IP address.</td>\n</tr>\n<tr>\n<td><code>tenant_identifier</code></td>\n<td>Related organization's ID.</td>\n</tr>\n<tr>\n<td><code>hv_type</code></td>\n<td>Cloud type; can be either <code>private</code> or <code>public</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","network","<NETWORK_ID>","devices"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"c856c74d-e305-46fa-840b-a6aca7c865a0","name":"Get network`s devices","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/network/41/devices"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|d4bbff63-7200-4930-8593-cb0733570cf6|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=d4bbff63-7200-4930-8593-cb0733570cf6"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 26 Jan 2022 17:30:12 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"491"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 123456,\n        \"vmdisplayname\": \"A Virtual Machine\",\n        \"ip\": \"1.2.3.4\",\n        \"assigned\": \"\",\n        \"tenant_identifier\": \"{{TEANT_ID}}\",\n        \"hv_type\": null,\n        \"localvmid\": \"<LOCALVMID>\"\n    }\n]"}],"_postman_id":"1e575fd5-0ba3-4b70-9c21-f757c48ddca4"},{"name":"Add IP address to the network","id":"eb3ae8ee-2a1f-456b-80d4-7ad5463fb527","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"ipaddress\": \"1.2.3.4\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/networks/<NETWORK_ID>/addIp","description":"<p>Use this endpoint to add a new IP address to the selected network. Request body should contain a string IP address value for the <code>ipaddress</code> parameter.</p>\n<blockquote>\n<p>Note: The endpoint is case-sensitive: make sure you're using <code>addIp</code>, not <code>addip</code> .</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","networks","<NETWORK_ID>","addIp"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e074fdcc-29d2-433f-8ae9-8e5af860ed43","name":"Add IP address to the network","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"ipaddress\": \"1.2.3.4\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/networks/<NETWORK_ID>/addIp"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|9017c7d0-2a3e-4efa-bda8-5c724b03d242|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=9017c7d0-2a3e-4efa-bda8-5c724b03d242"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Thu, 27 Jan 2022 13:42:42 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"487"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"The following IP has been added: 1.2.3.4\"\n}"}],"_postman_id":"eb3ae8ee-2a1f-456b-80d4-7ad5463fb527"},{"name":"Delete IP from the network","id":"55d8a66b-24c2-483d-a390-761e0991c66a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/networks/<NETWORK_ID>/deleteIp?ipid=<IP_ID>","description":"<p>This endpoint deletes an IP from the specific network. Query requires an <code>ipid</code> parameter.</p>\n<blockquote>\n<p>You can find <code>ipid</code> values within the <code>geiplist</code> response array of a <code>GET</code> <strong>Show network's info</strong> endpoint above.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","networks","<NETWORK_ID>","deleteIp"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>An ID of a specific IP address</p>\n","type":"text/plain"},"key":"ipid","value":"<IP_ID>"}],"variable":[]}},"response":[{"id":"2c8905c8-a3c7-4997-9ef6-1ea42efd15b1","name":"Delete IP from the network","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":""},"url":{"raw":"https://vdc.xelon.ch/api/service/networks/<NETWORK_ID>/deleteIp?ipid=<IP_ID>","host":["https://vdc.xelon.ch"],"path":["api","service","networks","<NETWORK_ID>","deleteIp"],"query":[{"key":"ipid","value":"<IP_ID>"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|38fd0ffe-f8ce-4a56-9b2b-1cf827ac3f46|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=38fd0ffe-f8ce-4a56-9b2b-1cf827ac3f46"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Thu, 27 Jan 2022 13:59:02 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"IPs have been deleted.\"\n}"}],"_postman_id":"55d8a66b-24c2-483d-a390-761e0991c66a"},{"name":"Bulk delete IPs by ID","id":"0320669b-6f64-46c8-86f3-2fe3f577a018","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"ips\": [\n        123,\n        456,\n        789\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/<NETWORK_ID>/deleteIps","description":"<p>This request allows you to bulk delete IPs by entering their <code>ipid</code>s in the <code>ids</code> array of the body request.</p>\n<blockquote>\n<p>IP address <strong>should not have the device assigned</strong>, otherwise deletion will not work.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","networks","<NETWORK_ID>","deleteIps"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"9cff787e-61c2-4b27-b6ad-f7ecaab88c0f","name":"Bulk delete IPs by ID","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    ids: [\n    123,\n    456,\n    789\n] \n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/<NETWORK_ID>/deleteIps"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{ \n\"message\": \"IPs have been deleted.\" \n}\n"}],"_postman_id":"0320669b-6f64-46c8-86f3-2fe3f577a018"},{"name":"Delete network","id":"19a0a3ed-2d80-4c6e-90ad-74702678d50d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/networks/<NETWORK_ID>/destroy","description":"<p>This endpoint allows you to delete a specific network by its <code>id</code> in the endpoint URL.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","networks","<NETWORK_ID>","destroy"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"971ba77f-ee44-4989-9cee-73bc3da1af26","name":"Delete network","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/networks/<NETWORK_ID>/destroy"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|8083f3c9-37bb-41e6-8e29-583c6c508674|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=8083f3c9-37bb-41e6-8e29-583c6c508674"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Mon, 24 Jan 2022 19:10:24 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"493"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Network has been deleted.\"\n}"}],"_postman_id":"19a0a3ed-2d80-4c6e-90ad-74702678d50d"},{"name":"Get list of networks to share","event":[{"listen":"test","script":{"id":"d59531eb-700e-437a-bf8b-da2579bb349e","exec":[""],"type":"text/javascript"}}],"id":"c5a528b9-4c97-49dc-ba40-b4678c52fd40","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/networksToShare?hypervisor_system_id=<CLOUD_ID>&owner_tenant_id=4fe96eb78deb","description":"<p>Use this endpoint to retrieve a list of networks available to add to the Shared Network.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>Network's ID.</td>\n</tr>\n<tr>\n<td><code>network</code></td>\n<td>Network's IP address.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Can be either <code>LAN</code> or <code>WAN</code>.</td>\n</tr>\n<tr>\n<td><code>subnet</code></td>\n<td>Network's subnet.</td>\n</tr>\n<tr>\n<td><code>displayname</code></td>\n<td>Network's display name.</td>\n</tr>\n<tr>\n<td><code>owner_tenant_id</code></td>\n<td>(optional) Identifier of the organization that owns the networks.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","tenants","<TENANT_ID>","networksToShare"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Integer value of your Cloud ID.</p>\n","type":"text/plain"},"key":"hypervisor_system_id","value":"<CLOUD_ID>"},{"key":"owner_tenant_id","value":"4fe96eb78deb"}],"variable":[]}},"response":[{"id":"a63eb074-bcd2-472d-84ec-00ffc4e7825c","name":"Get list of networks to share","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/tenants/<TENANT_ID>/networksToShare"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|b044a215-fe7a-424f-b1e7-22390023f89b|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=b044a215-fe7a-424f-b1e7-22390023f89b"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 26 Jan 2022 18:42:58 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"495"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 1234,\n        \"network\": \"1.2.3.4\",\n        \"type\": \"LAN\",\n        \"subnet\": 1,\n        \"displayname\": \"Display Name\"\n    }\n]"}],"_postman_id":"c5a528b9-4c97-49dc-ba40-b4678c52fd40"},{"name":"Add shared network","id":"26f742e1-179f-43d1-b327-322cf448416b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 4,\n\t\"networksIds\": [\n\t\t1234\n\t]\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/share","description":"<p>This endpoint creates a shared network. Request body requires a <code>cloudId</code> parameter and a <code>networksIds</code> array that consists of shared network IDs.</p>\n<blockquote>\n<p>Please note that you can add shared network (1) <strong>only</strong> to a sub-organization and (2) if you have a network <strong>connected to your organization</strong>.</p>\n</blockquote>\n<ul>\n<li><code>cloudId</code> — An ID of a specific Cloud.</li>\n<li><code>networksIds</code> — An array that should have <em>integer</em> values of other network's IDs.</li>\n</ul>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","networks","share"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"b3bd889d-bf8d-490a-aa16-f431489050d7","name":"Add shared network","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 4,\n\t\"networksIds\": [\n\t\t41\n\t]\n}"},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/share"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:09:12 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=gRlbJaQX8VjRri%2FH%2BMkgsTcwb7hLczz1AgKNVspASGhl%2F%2BHZAiEXNAkMZFoIRCAoO4Np9pXrnSzEJ3x1hB8rUPffmEQIyRwW7WCLdIb8mqO1gRq0AzzP6lvL6QWfzQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed6fddc6cdb78a3-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Shared Network successfully added.\"\n}"}],"_postman_id":"26f742e1-179f-43d1-b327-322cf448416b"},{"name":"Remove shared network","id":"c459ad89-1369-4fe2-bf91-e97fb8bd42da","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/networks/<NETWORK_ID>/removeshared","description":"<p>Use this endpoint to stop sharing a network with another organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","networks","<NETWORK_ID>","removeshared"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"c459ad89-1369-4fe2-bf91-e97fb8bd42da"}],"id":"ee15fe54-4df1-42cd-bd9c-51f77aedb992","description":"<p>Xelon HQ platform allows you to create and manage multiple networks. You can directly assign a Public Network (WAN) to your server, or deploy your server into LAN/DMZ network to further segment and secure the infrastructure.</p>\n<p>Each network also has an IP, and each IP has its own unique ID, usually marked as <code>ipid</code>.</p>\n<blockquote>\n<p>Network names (<code>displayname</code>) can be duplicated. Try to avoid similar naming when creating networks.</p>\n</blockquote>\n<h3 id=\"how-to-get-a-network-id\">How to get a Network ID</h3>\n<p>You can get a WAN or LAN network ID from the <code>networks</code> array of the <code>GET</code> <strong>Get list of networks</strong> endpoint below.</p>\n<h3 id=\"how-to-get-an-ips-id\">How to get an IP's ID</h3>\n<p>Use the <code>GET</code> <strong>Show network's info</strong> endpoint below. You can find <code>ipid</code> values within the <code>geiplist</code> response array.</p>\n","event":[{"listen":"prerequest","script":{"id":"373cafd8-13cc-4820-813e-d47bd7d5ba1d","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"274e2e90-b717-47e4-b3fe-f2ceccba3862","type":"text/javascript","exec":[""]}}],"_postman_id":"ee15fe54-4df1-42cd-bd9c-51f77aedb992","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Service Tokens","item":[{"name":"Create Service Token","id":"ef6f75e4-cb1c-46bd-b809-76531944a5e0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"ip\": \"1.2.3.4\",\n\t\"name\": \"Service Token Name\",\n\t\"tenantIdentifier\": \"<TENANT_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/service/registration","description":"<p>Use this endpoint to create a Service Token for the specified <code>ip</code> in the body request.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ip</code></td>\n<td>An IP address for your API requests.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>Your Service Token name. We recommend using familiar terms or names for your team to avoid token management issues.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>tenant_identifier</code></td>\n<td>Organization's ID.</td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["api","service","service","registration"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"c43fd95e-e33f-4ca4-bf5e-cc0a8cb6f037","name":"Create Service Token","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"ip\": \"1.2.3.4\",\n\t\"name\": \"Service Token Name\",\n\t\"tenantIdentifier\": \"<TENANT_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/service/registration"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:30:41 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=cTddgF%2FQV2qD3%2Fea9BkiYPS8unL3B9AYHQol%2BwTKDeymYTc%2Fa0m5Ina5rTULgVfmlc%2Bq6re%2F3YWO3rl%2F20eP1UiNMzzgpenJYOEmVHO0t16Ue1SFZjVIzdH9l1M9iQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed71d4fa866fcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"token\": \"<TOKEN>\",\n    \"client_id\": \"<CLIENT_ID>\"\n}"}],"_postman_id":"ef6f75e4-cb1c-46bd-b809-76531944a5e0"},{"name":"Delete Service Token","id":"c43feeb9-4c0b-45bc-a630-1a6a35367d86","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/service/delete/<SERVICE_TOKEN_ID>?tenant_identifier=<TENANT_ID>","description":"<p>Use this endpoint to delete a specific Service Token. Request URL should have a token's ID as well as a query must have a <code>tenant_identifier</code> parameter that equals your .</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","service","delete","<SERVICE_TOKEN_ID>"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Organization's ID.</p>\n","type":"text/plain"},"key":"tenant_identifier","value":"<TENANT_ID>"}],"variable":[]}},"response":[{"id":"66211c79-65b6-472b-9351-b6f6e90ab0e4","name":"Delete Service Token","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/service/delete/<SERVICE_TOKEN_ID>?tenant_identifier=<TENANT_ID>","host":["https://vdc.xelon.ch"],"path":["api","service","service","delete","<SERVICE_TOKEN_ID>"],"query":[{"key":"tenant_identifier","value":"<TENANT_ID>","description":"Organization ID"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:32:36 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=vGcV9gQR8lNqDT768DcBmyQBncHZGfRo1zV%2BHY3o27%2F3etniz8fXbddm3M8gp2vnh1VkSaSeC6NRqdsdVe0qLPYxqwdjO1mYjACvnJKcWJMQqrV0A2djgWi8qwEUPw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed720221f41fcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Service has been deleted\"\n}"}],"_postman_id":"c43feeb9-4c0b-45bc-a630-1a6a35367d86"},{"name":"List of all Service Tokens","id":"16ec2965-a937-4997-a07e-8ab28568bf01","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/services?tenantIdentifier=<TENANT_ID>&page=1&perPage=25","description":"<p>This endpoint retrieves a list of all Service Tokens available and active within your organization. You can use a Service Token's <code>id</code> to delete it.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","services"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Organization's ID.</p>\n","type":"text/plain"},"key":"tenantIdentifier","value":"<TENANT_ID>"},{"key":"page","value":"1"},{"key":"perPage","value":"25"}],"variable":[]}},"response":[{"id":"eec56a4c-4295-4e8d-bc72-fd05820fb4c9","name":"List of all Service Tokens","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/services?tenantIdentifier=<TENANT_ID>&page=1&perPage=25","host":["https://vdc.xelon.ch"],"path":["api","service","services"],"query":[{"key":"tenantIdentifier","value":"<TENANT_ID>","description":"An organization ID"},{"key":"page","value":"1"},{"key":"perPage","value":"25"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 16:32:12 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=2CuDot%2FRgShkWq8RqOMmwLLLcV3Hxe%2F09E1Z5m2lIKXspSn7n6gvtIBGbZCAfN5DXUhvqckx7Hqn2fzXRvoRARLaiM%2BVr4ADYQOcTuqY1FS4gHCw3rMm%2B9tIcvwwxw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed71f8b4c99fcb5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 12345,\n            \"tenantIdentifier\": \"<TENANT_ID>\",\n            \"tenantName\": \"Organization Name\",\n            \"tenantDeletedAt\": null,\n            \"name\": \"Service Token Name\",\n            \"ip\": \"1.2.3.4\",\n            \"clientId\": \"<CLIENT_ID>\",\n            \"lastActivity\": \"2022-03-17T17:39:32+01:00\",\n            \"lastActivityDescription\": \"<LAST_ACTIVITY_DESCRIPTION>\"\n        }\n    ],\n    \"meta\": {\n        \"total\": 1,\n        \"lastPage\": 1,\n        \"perPage\": 25,\n        \"currentPage\": 1,\n        \"from\": 1,\n        \"to\": 1\n    }\n}"}],"_postman_id":"16ec2965-a937-4997-a07e-8ab28568bf01"}],"id":"f913aa23-07c1-4ad6-af14-73cc5bed5179","description":"<p>Service Token is a unique 'password' for accessing our API, which is linked to a specific IP, and labeled by a name. For now, you can not set a range of IP addresses for one Service Token, only a single IP address.</p>\n<p><strong>You can create a Service Token only one time for each IP address</strong>. If, for some reason, you've lost your Service Token, you should re-create it and assign to your current IP address.</p>\n<p>Also, each Service Token has its own unique <code>id</code>. You can get it through the <code>GET</code> <strong>List of all Service Tokens</strong> endpoint below.</p>\n<blockquote>\n<p>Treat your Service Token like you would a bank account password.</p>\n</blockquote>\n","_postman_id":"f913aa23-07c1-4ad6-af14-73cc5bed5179","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Snapshots","item":[{"name":"Get snapshots list","id":"313b4a88-dfe7-4565-a08f-af2b7198e6d4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/<VM_ID>/snapshots","description":"<p>This endpoint retrieves a list of all snapshots created for a specific device.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>snapshot.val</code></td>\n<td>Snapshot ID.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>Snapshot display name.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>Snapshot description.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>state</code></td>\n<td>Device state; can be either <code>poweredOn</code> or <code>poweredOff</code>.</td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>childSnapshotList</code></td>\n<td>An array that lists all the child snapshots related to this device's snapshot.</td>\n<td><em>array</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","vmlist","<VM_ID>","snapshots"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"f7660827-b389-46df-98ff-e11a35d9577c","name":"Get snapshots list","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/vmlist/<VM_ID>/snapshots"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:50:37 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=GELW%2FsTeJOqNTnqFyT5GBm%2Bs7%2FLRMAZRr5dpufA7cUU64OLJftRMOUbhFCHtvsj10V%2BY4FKzuBr2OXtN9yCWlWFjpdRbGoxBD8ds%2BnbGLENat50In7rvSKIiXpmu8Q%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed79267ca9c7801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"snapshotdata\": [\n        {\n            \"snapshot\": {\n                \"type\": \"VirtualMachineSnapshot\",\n                \"val\": \"snapshot-123456\",\n                \"_\": \"<>\"\n            },\n            \"vm\": {\n                \"type\": \"VirtualMachine\",\n                \"val\": \"vm-123456\",\n                \"_\": \"<>\"\n            },\n            \"name\": \"Name\",\n            \"description\": \"Description\",\n            \"id\": 123,\n            \"createTime\": \"2022-03-17 18:49:29\",\n            \"state\": \"poweredOff\",\n            \"childSnapshotList\": [\n                {\n                    \"snapshot\": {\n                        \"type\": \"VirtualMachineSnapshot\"\n                    },\n                    \"vm\": {\n                        \"type\": \"VirtualMachine\"\n                    },\n                    \"name\": \"Child Snapshot\",\n                    \"description\": \"Child snapshot.\",\n                    \"id\": 123,\n                    \"createTime\": \"2022-03-17 18:50:12\",\n                    \"state\": \"poweredOff\",\n                    \"size\": 36\n                }\n            ],\n            \"size\": 5636,\n            \"quiesced\": false,\n            \"replaySupported\": false\n        }\n    ],\n    \"localvmdetails\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"deleted_at\": null,\n        \"failure_reason\": null,\n        \"hv_system\": {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"display_name\": \"<DISPLAY_NAME>\",\n            \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"main_cloud\": 1,\n            \"type\": 1,\n            \"version\": 1\n        },\n        \"hv_system_id\": 1,\n        \"hv_type\": \"<HV_TYPE>\",\n        \"is_restoring\": null,\n        \"iso_mounted\": null,\n        \"localvmid\": \"<LOCALVMID>\",\n        \"monitoring\": 1,\n        \"notes\": \"<NOTES>\",\n        \"service_cluster_type\": null,\n        \"service_id\": null,\n        \"serviceuser_lastchecked\": null,\n        \"serviceuser_status\": 1,\n        \"state\": 1,\n        \"template_id\": 1,\n        \"tenant\": {\n            \"account_manager\": 1,\n            \"active\": false,\n            \"address\": \"<ADDRESS>\",\n            \"address2\": \"<ADDRESS2>\",\n            \"allow_bank_transfer\": false,\n            \"allow_trial_creation\": false,\n            \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n            \"billingplan\": 1,\n            \"city\": \"<CITY>\",\n            \"country\": \"<COUNTRY>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"credits_code_id\": null,\n            \"currency_id\": null,\n            \"customer_id\": 1,\n            \"customer_support_email\": \"<EMAIL>\",\n            \"customer_type\": \"<CUSTOMER_TYPE>\",\n            \"deactivation_date\": null,\n            \"deleted_at\": null,\n            \"demo\": false,\n            \"demo_end\": \"<DEMO_END>\",\n            \"demo_start\": null,\n            \"discount\": null,\n            \"financeemail\": [],\n            \"fixed_recurring\": 1,\n            \"fraud_risk_score\": 1,\n            \"hs_object_id\": null,\n            \"invoice_type\": \"<INVOICE_TYPE>\",\n            \"minimum_recurring\": 1,\n            \"otp_type\": null,\n            \"paid\": 1,\n            \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n            \"phone\": \"<PHONE>\",\n            \"postcode\": \"<POSTCODE>\",\n            \"report_frequency\": \"<REPORT_FREQUENCY>\",\n            \"requested\": 1,\n            \"resource_pool\": \"<RESOURCE_POOL>\",\n            \"status\": 1,\n            \"supportemail\": \"<EMAIL>\",\n            \"tax_id\": 1,\n            \"taxed\": 1,\n            \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n            \"tenantname\": \"<TENANTNAME>\",\n            \"trial\": false,\n            \"trial_end\": \"<TRIAL_END>\",\n            \"trial_start\": \"<TRIAL_START>\",\n            \"type\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"upgrade_modal_active\": 1,\n            \"withhold_invoices\": 1\n        },\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"user_id\": 1,\n        \"vdc_service_type\": 1,\n        \"vmdisplayname\": \"<VMDISPLAYNAME>\",\n        \"vmhostname\": \"<VMHOSTNAME>\"\n    },\n    \"snapshotdata_current\": \"<SNAPSHOTDATA_CURRENT>\",\n    \"tenantidentifier\": \"<TENANTIDENTIFIER>\"\n}"}],"_postman_id":"313b4a88-dfe7-4565-a08f-af2b7198e6d4"},{"name":"Create new snapshot","id":"309001e3-bfc4-4fea-a088-4315517e4f93","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"snapshotdesc\": \"Yet another description.\",\n\t\"snapshotname\": \"To Delete\"\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/snapshots","description":"<p>This endpoint creates a new snapshot of a specified device. Request body should contain its name (<code>snapshotname</code>, <em>required</em>) and <em>optional</em> description (<code>snapshotdesc</code>).</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","snapshots"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"29add6a2-fe95-4efd-9b0f-1840157e1f98","name":"Create new snapshot","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"snapshotdesc\": \"Yet another description.\",\n\t\"snapshotname\": \"Test Snapshot 3\"\n}"},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/snapshots"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:50:12 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=Z9IwARf13niJKj5jalQEn9bzG7b71Wlh3hPq5TRbL0O7YJqht1gV55bY2RRTgqQ2Ew46FUrxTRcaFKyRNKONjE80im2Cu3mazJBgt8Pj9Oq3mv65RjLvCTeUr7cfWA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed791cb281c7801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"ok\",\n    \"message\": \"Snapshot created\"\n}"}],"_postman_id":"309001e3-bfc4-4fea-a088-4315517e4f93"},{"name":"Delete snapshot","id":"70880442-d638-4569-ad4b-5afc116446ee","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/snapshot/destroy/<SNAPSHOT_ID>?deletechildren=1","description":"<p>This request deletes a specific snapshot by its <code>snapshot.val</code> in the URL. By setting a <code>deletechildren</code> query parameter to <code>1</code>, you can also delete all the child snapshots available.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","snapshot","destroy","<SNAPSHOT_ID>"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>If 1, deletes this snapshot and its child snapshots.</p>\n","type":"text/plain"},"key":"deletechildren","value":"1"}],"variable":[]}},"response":[{"id":"cf156b69-5880-4ea4-ab3b-445c7e84f470","name":"Delete snapshot","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":{"raw":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/snapshot/destroy/<SNAPSHOT_ID>?deletechildren=1","host":["https://vdc.xelon.ch"],"path":["api","service","vmlist","<VM_ID>","snapshot","destroy","<SNAPSHOT_ID>"],"query":[{"key":"deletechildren","value":"1","description":"If 1, deletes this snapshot and its child snapshots."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:51:59 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=hte7eB1OwD8o5%2Bv9MSgYFCrINc4CYx96r18eLX6K14jWXH8AeNVVt4D49DOjQCre23ficYg5KuT8VhLw7pXqB473pUryV%2BMcqNy6k38YOZWl%2Bc9xqFcy9Tgb3M4tVg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed794697ed57801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Snapshot has been deleted.\"\n}"}],"_postman_id":"70880442-d638-4569-ad4b-5afc116446ee"},{"name":"Restore snapshot","id":"f817108f-9103-4f67-a198-50e20af71c7a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/snapshot/revert/<SNAPSHOT_ID>","description":"<p>Restores a specific snapshot by its <code>snapshot.val</code> in the URL.</p>\n<blockquote>\n<p>This action is irreversible and will permanently delete all data on this disk!</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","<VM_ID>","snapshot","revert","<SNAPSHOT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0e4d7282-6f2e-4c57-931e-65417dce50d1","name":"Restore snapshot","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/vmlist/<VM_ID>/snapshot/revert/snapshot-928655"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 17:56:11 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=3Z9zc43ZRm%2Bxrp3cS%2BKx8Xissb60kR2UagVi5HghhedkITuI%2F%2B%2FoKn%2BakGcXB1pnScjHRErwpowpZeNQMDonC%2F4biwUkDkYqGoWC71LrdLh6msgV0cMHNNXWcytXsQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed79a9249e87801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Snapshot is being restored.\"\n}"}],"_postman_id":"f817108f-9103-4f67-a198-50e20af71c7a"}],"id":"f1616bb6-a8eb-4bf1-b228-fb39737d8134","description":"<p>Xelon HQ platform allows you to create, delete, restore, and inspect Snapshots. Each snapshot can be identified by its <code>snapshot.val</code> parameter — you can retrieve it through a <code>GET</code> <strong>Get snapshots list</strong> endpoint below.</p>\n<blockquote>\n<p>Learn more about backups and snapshots <a href=\"https://www.xelon.ch/docs/device-backup-and-snapshot\">here</a>.</p>\n</blockquote>\n","event":[{"listen":"prerequest","script":{"id":"e79e9908-601d-4ba2-ab4f-e1a6d6d12ad1","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"1c876e32-c167-4cc4-ba3e-76fbdf9a2d3b","type":"text/javascript","exec":[""]}}],"_postman_id":"f1616bb6-a8eb-4bf1-b228-fb39737d8134","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Usage Reports","item":[{"name":"Show all usage reports","id":"2246d74a-14bb-45fc-9293-6f5e0d95b2d8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-User-Id:","value":"<TOKEN>","type":"text"}],"url":"https://vdc.xelon.ch/api/service/billing/usage-reports/all?page=1&perPage=25","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>Integer</td>\n<td>Unique identifier for the generated report.</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>String</td>\n<td>Name associated with the report.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>Any</td>\n<td>Report's status information (may be null).</td>\n</tr>\n<tr>\n<td><code>createdAt</code></td>\n<td>String</td>\n<td>Timestamp of the record creation.</td>\n</tr>\n<tr>\n<td><code>updatedAt</code></td>\n<td>String</td>\n<td>Timestamp of the record last update.</td>\n</tr>\n<tr>\n<td><code>startDate</code></td>\n<td>String</td>\n<td>Start date of the time period.</td>\n</tr>\n<tr>\n<td><code>endDate</code></td>\n<td>String</td>\n<td>End date of the time period.</td>\n</tr>\n<tr>\n<td><code>meta</code></td>\n<td>Object / Array</td>\n<td>Additional response metadata.</td>\n</tr>\n<tr>\n<td><code>total</code></td>\n<td>Integer</td>\n<td>Total number of records in the dataset.</td>\n</tr>\n<tr>\n<td><code>lastPage</code></td>\n<td>Integer</td>\n<td>The last page in a paginated response.</td>\n</tr>\n<tr>\n<td><code>perPage</code></td>\n<td>Integer</td>\n<td>Number of records per page in pagination.</td>\n</tr>\n<tr>\n<td><code>currentPage</code></td>\n<td>Integer</td>\n<td>Current page number in a paginated response.</td>\n</tr>\n<tr>\n<td><code>from</code></td>\n<td>Integer</td>\n<td>Index of the first item in the response.</td>\n</tr>\n<tr>\n<td><code>to</code></td>\n<td>Integer</td>\n<td>Index of the last item in the response.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","usage-reports","all"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Selected page in a paginated response.</p>\n","type":"text/plain"},"key":"page","value":"1"},{"description":{"content":"<p>Number of records per page in pagination.</p>\n","type":"text/plain"},"key":"perPage","value":"25"}],"variable":[]}},"response":[{"id":"607a602e-8c21-436a-b2dc-16e4c5d20045","name":"Show all usage reports","originalRequest":{"method":"GET","header":[{"key":"X-User-Id:","value":"<TOKEN>","type":"text"}],"url":{"raw":"https://vdc.xelon.ch/api/service/billing/usage-reports/all?page=1&perPage=25","host":["https://vdc.xelon.ch"],"path":["api","service","billing","usage-reports","all"],"query":[{"key":"page","value":"1","description":"Selected page in a paginated response."},{"key":"perPage","value":"25","description":"Number of records per page in pagination."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1234,\n            \"name\": \"February 1-14\",\n            \"status\": null,\n            \"createdAt\": \"2024-02-01T01:00:25+01:00\",\n            \"updatedAt\": \"2024-02-15T01:00:22+01:00\",\n            \"startDate\": \"2024-02-01 00:00:00\",\n            \"endDate\": \"2024-02-15 23:59:59\"\n        }\n    ],\n    \"meta\": {\n        \"total\": 8,\n        \"lastPage\": 1,\n        \"perPage\": 25,\n        \"currentPage\": 1,\n        \"from\": 1,\n        \"to\": 8\n    }\n}"}],"_postman_id":"2246d74a-14bb-45fc-9293-6f5e0d95b2d8"},{"name":"Usage report details","id":"72271b56-8096-48a7-95dd-be1e1a1e5382","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"X-User-Id","value":"<TOKEN>","type":"text"}],"url":"https://vdc.xelon.ch/api/service/billing/usage-report/get/<USAGE_REPORT_ID>","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>Integer</td>\n<td>Unique identifier for the record.</td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td>String</td>\n<td>Name associated with the record.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>Any</td>\n<td>Status information (may be null).</td>\n</tr>\n<tr>\n<td><code>createdAt</code></td>\n<td>String</td>\n<td>Timestamp of the record creation.</td>\n</tr>\n<tr>\n<td><code>updatedAt</code></td>\n<td>String</td>\n<td>Timestamp of the record last update.</td>\n</tr>\n<tr>\n<td><code>startDate</code></td>\n<td>String</td>\n<td>Start date of the time period.</td>\n</tr>\n<tr>\n<td><code>endDate</code></td>\n<td>String</td>\n<td>End date of the time period.</td>\n</tr>\n<tr>\n<td><code>data</code></td>\n<td>Object</td>\n<td>Nested data object containing detailed information.</td>\n</tr>\n<tr>\n<td><code>totalOverview</code></td>\n<td>Object</td>\n<td>Overview data for pricing and resources.</td>\n</tr>\n<tr>\n<td><code>pricing</code></td>\n<td>Object</td>\n<td>Pricing information for the total overview.</td>\n</tr>\n<tr>\n<td><code>vatPercentage</code></td>\n<td>String</td>\n<td>VAT percentage for pricing.</td>\n</tr>\n<tr>\n<td><code>outgoing</code></td>\n<td>Object</td>\n<td>Outgoing pricing details.</td>\n</tr>\n<tr>\n<td><code>baseFee</code></td>\n<td>Integer</td>\n<td>Base fee for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>subtotal</code></td>\n<td>Float</td>\n<td>Subtotal for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>tenantDiscount</code></td>\n<td>Float</td>\n<td>Tenant discount for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>partnerDiscount</code></td>\n<td>Float</td>\n<td>Partner discount for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>totalBeforeCreditsAndVat</code></td>\n<td>Float</td>\n<td>Total before credits and VAT for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>usedCredits</code></td>\n<td>Integer</td>\n<td>Used credits for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>totalBeforeVat</code></td>\n<td>Float</td>\n<td>Total before VAT for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>vat</code></td>\n<td>Float</td>\n<td>VAT for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>finalTotal</code></td>\n<td>Float</td>\n<td>Final total for outgoing pricing.</td>\n</tr>\n<tr>\n<td><code>incoming</code></td>\n<td>Object</td>\n<td>Incoming pricing details.</td>\n</tr>\n<tr>\n<td><code>baseFee</code></td>\n<td>Integer</td>\n<td>Base fee for incoming pricing.</td>\n</tr>\n<tr>\n<td><code>subtotal</code></td>\n<td>Float</td>\n<td>Subtotal for incoming pricing.</td>\n</tr>\n<tr>\n<td><code>tenantDiscount</code></td>\n<td>Float</td>\n<td>Tenant discount for incoming pricing.</td>\n</tr>\n<tr>\n<td><code>total</code></td>\n<td>Float</td>\n<td>Total for incoming pricing.</td>\n</tr>\n<tr>\n<td><code>resources</code></td>\n<td>Object</td>\n<td>Detailed resource information.</td>\n</tr>\n<tr>\n<td><code>CPU</code></td>\n<td>Object</td>\n<td>CPU resource details.</td>\n</tr>\n<tr>\n<td><code>onHours</code></td>\n<td>Integer</td>\n<td>On hours for CPU resource.</td>\n</tr>\n<tr>\n<td><code>offHours</code></td>\n<td>Integer</td>\n<td>Off hours for CPU resource.</td>\n</tr>\n<tr>\n<td><code>totalHours</code></td>\n<td>Integer</td>\n<td>Total hours for CPU resource.</td>\n</tr>\n<tr>\n<td><code>pricing</code></td>\n<td>Object</td>\n<td>Pricing details for CPU resource.</td>\n</tr>\n<tr>\n<td><code>outgoing</code></td>\n<td>Object</td>\n<td>Outgoing pricing details for CPU resource.</td>\n</tr>\n<tr>\n<td><code>baseFee</code></td>\n<td>Integer</td>\n<td>Base fee for outgoing pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>subtotal</code></td>\n<td>Float</td>\n<td>Subtotal for outgoing pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>tenantDiscount</code></td>\n<td>Float</td>\n<td>Tenant discount for outgoing pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>partnerDiscount</code></td>\n<td>Float</td>\n<td>Partner discount for outgoing pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>total</code></td>\n<td>Float</td>\n<td>Total for outgoing pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>incoming</code></td>\n<td>Object</td>\n<td>Incoming pricing details for CPU resource.</td>\n</tr>\n<tr>\n<td><code>subtotal</code></td>\n<td>Float</td>\n<td>Subtotal for incoming pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>tenantDiscount</code></td>\n<td>Float</td>\n<td>Tenant discount for incoming pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>baseFee</code></td>\n<td>Integer</td>\n<td>Base fee for incoming pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>total</code></td>\n<td>Float</td>\n<td>Total for incoming pricing of CPU resource.</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>String</td>\n<td>Description of the resource (e.g., \"4074 CPU Hours\").</td>\n</tr>\n<tr>\n<td><code>RAM</code></td>\n<td>Object</td>\n<td>RAM resource details.</td>\n</tr>\n<tr>\n<td>[and so on for other resources]</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td><code>devices</code></td>\n<td>Array</td>\n<td>Array of device objects containing detailed information.</td>\n</tr>\n<tr>\n<td>[details for each device]</td>\n<td>Object</td>\n<td>Details for each device in the array.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","usage-report","get","<USAGE_REPORT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"ee9c6950-8908-43e6-af5f-3376e61968e7","name":"Usage report details","originalRequest":{"method":"GET","header":[{"key":"X-User-Id","value":"<TOKEN>","type":"text"}],"url":"https://vdc.xelon.ch/api/service/billing/usage-report/get/<USAGE_REPORT_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 1234,\n    \"name\": \"January 1-14\",\n    \"status\": null,\n    \"createdAt\": \"2024-01-01T01:00:25+01:00\",\n    \"updatedAt\": \"2024-01-15T01:00:22+01:00\",\n    \"startDate\": \"2024-01-01 00:00:00\",\n    \"endDate\": \"2024-01-15 23:59:59\",\n    \"data\": {\n        \"totalOverview\": {\n            \"pricing\": {\n                \"vatPercentage\": \"10\",\n                \"outgoing\": {\n                    \"baseFee\": 0,\n                    \"subtotal\": 123.456,\n                    \"totalBeforeCreditsAndVat\": 123.456,\n                    \"usedCredits\": 0,\n                    \"totalBeforeVat\": 123.456,\n                    \"vat\": 123.456,\n                    \"finalTotal\": 123.45678910\n                },\n                \"incoming\": {\n                    \"baseFee\": 10,\n                    \"subtotal\": 123.45678910,\n                    \"total\": 123.45678910\n                }\n            },\n            \"resources\": {\n                \"CPU\": {\n                    \"onHours\": 1234,\n                    \"offHours\": 0,\n                    \"totalHours\": 1234,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 123.45678910,\n                            \"baseFee\": 0,\n                            \"total\": 51.479063999999994\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 23.03556,\n                            \"baseFee\": 0,\n                            \"total\": 22.12764\n                        }\n                    },\n                    \"description\": \"4074 CPU Hours\"\n                },\n                \"RAM\": {\n                    \"onHours\": 4074,\n                    \"offHours\": 0,\n                    \"totalHours\": 4074,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 61.11,\n                            \"baseFee\": 0,\n                            \"total\": 49.4991\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 26.189999999999998,\n                            \"baseFee\": 0,\n                            \"total\": 25.4916\n                        }\n                    },\n                    \"description\": \"4074 RAM Hours\"\n                },\n                \"SSD\": {\n                    \"onHours\": 31428,\n                    \"offHours\": 0,\n                    \"totalHours\": 31428,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 10.68552,\n                            \"baseFee\": 0,\n                            \"total\": 8.530606800000001\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 4.24278,\n                            \"baseFee\": 0,\n                            \"total\": 4.138019999999999\n                        }\n                    },\n                    \"description\": \"31428 GB SSD Hours\"\n                },\n                \"HDD\": {\n                    \"onHours\": 14550,\n                    \"offHours\": 0,\n                    \"totalHours\": 14550,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 2.037,\n                            \"baseFee\": 0,\n                            \"total\": 1.46664\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 0,\n                            \"baseFee\": 0,\n                            \"total\": 0\n                        }\n                    },\n                    \"description\": \"14550 GB HDD Hours\"\n                },\n                \"Snapshot\": {\n                    \"onHours\": 2408.36,\n                    \"offHours\": 0,\n                    \"totalHours\": 2408.36,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 0.7225079999999999,\n                            \"baseFee\": 0,\n                            \"total\": 0.52020576\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 0,\n                            \"tenantDiscount\": 0,\n                            \"baseFee\": 0,\n                            \"total\": 0\n                        }\n                    },\n                    \"description\": \"2408.36 GB Snapshot Hours\"\n                },\n                \"Licenses\": {\n                    \"onHours\": 291,\n                    \"offHours\": 0,\n                    \"totalHours\": 291,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 8.73,\n                            \"baseFee\": 0,\n                            \"total\": 6.2856\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 0,\n                            \"baseFee\": 0,\n                            \"total\": 0\n                        }\n                    },\n                    \"description\": \"291 Windows License Hours\"\n                },\n                \"Firewall\": {\n                    \"onHours\": 582,\n                    \"offHours\": 0,\n                    \"totalHours\": 582,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 17.46,\n                            \"baseFee\": 0,\n                            \"total\": 15.714\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 0.08148,\n                            \"baseFee\": 0,\n                            \"total\": 0.077406\n                        }\n                    },\n                    \"description\": \"582 Firewall Hours\"\n                },\n                \"Load Balancer\": {\n                    \"onHours\": 582,\n                    \"offHours\": 0,\n                    \"totalHours\": 582,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 17.46,\n                            \"baseFee\": 0,\n                            \"total\": 14.1426\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 0.04074,\n                            \"baseFee\": 0,\n                            \"total\": 0.04074\n                        }\n                    },\n                    \"description\": \"582 Load Balancer Hours\"\n                },\n                \"Backup\": {\n                    \"onHours\": 530,\n                    \"offHours\": 0,\n                    \"totalHours\": 530,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 0.07419999999999999,\n                            \"baseFee\": 0,\n                            \"total\": 0.0641088\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 0.059359999999999996,\n                            \"baseFee\": 0,\n                            \"total\": 0.059359999999999996\n                        }\n                    },\n                    \"description\": \"530 Backup Hours\"\n                },\n                \"Network\": {\n                    \"onHours\": 0,\n                    \"offHours\": 0,\n                    \"totalHours\": 0,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 82.25159,\n                            \"baseFee\": 0,\n                            \"total\": 71.399853\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 67.69319,\n                            \"baseFee\": 0,\n                            \"total\": 67.22139\n                        }\n                    },\n                    \"description\": \"Networks & network upgrades\"\n                },\n                \"Replication\": {\n                    \"onHours\": 0,\n                    \"offHours\": 0,\n                    \"totalHours\": 0,\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 0,\n                            \"baseFee\": 0,\n                            \"total\": 0.291842\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 0,\n                            \"baseFee\": 0,\n                            \"total\": 0\n                        }\n                    },\n                    \"description\": \"Replications\"\n                }\n            },\n            \"devices\": [\n                {\n                    \"cpuOn\": \"291\",\n                    \"ramOn\": \"291\",\n                    \"cpuOff\": \"0\",\n                    \"ramOff\": \"0\",\n                    \"storage\": \"1746\",\n                    \"snapshot\": \"0.00\",\n                    \"windowssrvlic\": \"0\",\n                    \"firewall\": \"0\",\n                    \"loadBalancer\": \"0\",\n                    \"backupStorage\": 0,\n                    \"hdd\": \"0\",\n                    \"vmid\": \"2996e001e9f5\",\n                    \"vmdisplayname\": \"testNikDev_1-testNikRes_GrendChildRes\",\n                    \"tenantid\": \"068eba22cb16\",\n                    \"description\": \"291 CPU Hours, 291 RAM Hours, 1746 GB SSD Hours\",\n                    \"pricing\": {\n                        \"outgoing\": {\n                            \"subtotal\": 9.52824\n                        },\n                        \"incoming\": {\n                            \"subtotal\": 8.55554\n                        }\n                    }\n                }]}}}"}],"_postman_id":"72271b56-8096-48a7-95dd-be1e1a1e5382"}],"id":"cedabfe1-248a-4874-ac32-0f1ec315db0f","description":"<p>Reports allow users to quickly get ahold of the pricing, usage history, and expected payments from the general and per-tenant perspective.</p>\n<p>For date filters within body requests we recommend to use the <a href=\"https://www.iso.org/iso-8601-date-and-time-format.html\">ISO8601</a> format: <strong>YYYY-MM-DD.</strong></p>\n","event":[{"listen":"prerequest","script":{"id":"321bc5c2-3deb-4009-808f-0131711325ac","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"e1fe3d73-2afd-467d-bcf2-398e2826ead9","type":"text/javascript","exec":[""]}}],"_postman_id":"cedabfe1-248a-4874-ac32-0f1ec315db0f","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Notifications","item":[{"name":"List of all notifications","id":"cbb2ab79-b774-427a-a529-94813471ec88","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/notifications","description":"<p>Use this endpoint to retrieve the list of notifications for a specific user.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>A unique ID generated for each notification message.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>Type of notification.</td>\n</tr>\n<tr>\n<td><code>notifiable_id</code></td>\n<td>And ID of a user who receives the notification.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","notifications"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"bb5d5e90-7256-488e-a41a-cecaab38ce83","name":"List of all notifications","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/notifications"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 18:04:40 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=DrMRAnGJC5DALUyc32QL4c%2FEQ3hXkL4noEfQmmkFe5pJhzxM3AeojbYHpDDCd7DLoCrhEmc9Y7xJUZNWi1%2FG6uD345R8Ocp%2BjPVpxNsUyormHrNXlTMLHJVBXc87KQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed7a6fe7ac77801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": \"eb0b0dwk4-5513-4596-a9ea-12320f0cef1f\",\n        \"type\": \"App\\\\Notifications\\\\DeviceProvisioningFinished\",\n        \"notifiable_type\": \"App\\\\User\",\n        \"notifiable_id\": 1234,\n        \"data\": {\n            \"name\": \"Your device \\\"Device name\\\" provisioning is finished\",\n            \"description\": null,\n            \"type\": null\n        },\n        \"read_at\": null,\n        \"created_at\": \"2022-03-17T15:57:27+01:00\",\n        \"updated_at\": \"2022-03-17T15:57:27+01:00\"\n    }\n]"}],"_postman_id":"cbb2ab79-b774-427a-a529-94813471ec88"},{"name":"Mark as read","id":"671416be-ebca-4054-bc6a-c2c91428435f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"url":"https://vdc.xelon.ch/api/service/notifications/<NOTIFICATION_ID>","description":"<p>Use this endpoint to mark the specific notification as read. Endpoint URL requires a notification <code>id</code>. Within a <code>200</code> response, endpoint simply retrieves a notification's id.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","notifications","<NOTIFICATION_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"1d9af802-5629-4c1e-a51e-fc288399f150","name":"Mark as read","originalRequest":{"method":"PUT","header":[],"url":"https://vdc.xelon.ch/api/service/notifications/<NOTIFICATION_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 18:05:18 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=VLg89fLs80FXBRSrW2OvoaGZwgRg7EBjp9eVXgPZuygqN5p73k4pZKaNmqk3snOtf5Vvu2pUxi1ryuTNo4MN7rcPgBEuzun%2FENhNO26hRNWuzvh01lXwnj9LcCrkdw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed7a7e9cb3e7801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    \"eb0b0dwk4-5513-4596-a9ea-12320f0cef1f\"\n]"}],"_postman_id":"671416be-ebca-4054-bc6a-c2c91428435f"}],"id":"9e498a67-b9f0-42a8-837a-f92b4a733174","description":"<p>We use Notifications to alert you about all important activities within your account.</p>\n<p>Each notification has its own unique <code>id</code> and can be marked as read.</p>\n","_postman_id":"9e498a67-b9f0-42a8-837a-f92b4a733174","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Kubernetes Clusters [Beta]","item":[{"name":"Rancher-based Cluster management","item":[{"name":"Metrics","item":[{"name":"Nodes CPU usage","id":"20070881-1e16-4151-802a-6320a95dbcae","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/metrics/cpuNodes?start=1647359629&end=1647446029&step=864","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","metrics","cpuNodes"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Seconds since Jan 01, 1970. Get timestamp at <a href=\"https://www.unixtimestamp.com/\">https://www.unixtimestamp.com/</a></p>\n","type":"text/plain"},"key":"start","value":"1647359629"},{"description":{"content":"<p>Seconds since Jan 01, 1970. Get timestamp at <a href=\"https://www.unixtimestamp.com/\">https://www.unixtimestamp.com/</a></p>\n","type":"text/plain"},"key":"end","value":"1647446029"},{"description":{"content":"<p>Rancher's internal monitoring benchmark</p>\n","type":"text/plain"},"key":"step","value":"864"}],"variable":[]}},"response":[{"id":"813ff9b1-d941-4f8c-8614-e352ed3bc7e8","name":"Nodes CPU usage","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/metrics/cpuNodes?start=1647359629&end=1647446029&step=864","host":["https://vdc.xelon.ch"],"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","metrics","cpuNodes"],"query":[{"key":"start","value":"1647359629"},{"key":"end","value":"1647446029"},{"key":"step","value":"864"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|05e5c3eb-12ac-49bc-acbd-bc2a2f7b2ac4|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=05e5c3eb-12ac-49bc-acbd-bc2a2f7b2ac4"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 16 Mar 2022 15:56:40 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"498"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"ranchiknode1\": [\n        35.114,\n        8.875,\n        8.683,\n        8.889,\n        9.047,\n        8.892,\n        9.348,\n        8.804,\n        9.058,\n        8.729,\n        8.717,\n        9.208,\n        9.15,\n        9.092,\n        10.858,\n        9.263,\n        9.142,\n        8.867,\n        9.817,\n        9.042,\n        9.067,\n        8.917,\n        8.942,\n        9.875,\n        9.146,\n        9.271,\n        8.933\n    ],\n    \"labels\": [\n        \"16 Mar 09:03:25\",\n        \"16 Mar 09:03:49\",\n        \"16 Mar 10:03:13\",\n        \"16 Mar 10:03:37\",\n        \"16 Mar 10:03:01\",\n        \"16 Mar 10:03:25\",\n        \"16 Mar 11:03:49\",\n        \"16 Mar 11:03:13\",\n        \"16 Mar 11:03:37\",\n        \"16 Mar 11:03:01\",\n        \"16 Mar 12:03:25\",\n        \"16 Mar 12:03:49\",\n        \"16 Mar 12:03:13\",\n        \"16 Mar 12:03:37\",\n        \"16 Mar 13:03:01\",\n        \"16 Mar 13:03:25\",\n        \"16 Mar 13:03:49\",\n        \"16 Mar 13:03:13\",\n        \"16 Mar 13:03:37\",\n        \"16 Mar 14:03:01\",\n        \"16 Mar 14:03:25\",\n        \"16 Mar 14:03:49\",\n        \"16 Mar 14:03:13\",\n        \"16 Mar 15:03:37\",\n        \"16 Mar 15:03:01\",\n        \"16 Mar 15:03:25\",\n        \"16 Mar 15:03:49\"\n    ],\n    \"ranchiknode2\": [\n        6.025,\n        6.208,\n        6.329,\n        6.179,\n        5.658,\n        5.95,\n        6.083,\n        5.829,\n        6.167,\n        5.962,\n        6.662,\n        6.313,\n        5.988,\n        5.95,\n        6.317,\n        6.096,\n        6.204,\n        6.092,\n        6.817,\n        6.081,\n        6.267,\n        7.487,\n        6.167,\n        6.4,\n        6.396,\n        6.45,\n        6.463\n    ]\n}"}],"_postman_id":"20070881-1e16-4151-802a-6320a95dbcae"},{"name":"Cluster CPU usage","id":"a06c9622-10be-4860-9ea7-dc6331ce2766","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/metrics/cpuCluster?start=1647359629&end=1647446029&step=864","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","metrics","cpuCluster"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Seconds since Jan 01, 1970. Get timestamp at <a href=\"https://www.unixtimestamp.com/\">https://www.unixtimestamp.com/</a></p>\n","type":"text/plain"},"key":"start","value":"1647359629"},{"description":{"content":"<p>Seconds since Jan 01, 1970. Get timestamp at <a href=\"https://www.unixtimestamp.com/\">https://www.unixtimestamp.com/</a></p>\n","type":"text/plain"},"key":"end","value":"1647446029"},{"description":{"content":"<p>Rancher's internal monitoring benchmark</p>\n","type":"text/plain"},"key":"step","value":"864"}],"variable":[]}},"response":[{"id":"363c01da-088f-484f-8f82-298f5cd83a05","name":"Cluster CPU usage","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/metrics/cpuCluster?start=1647359629&end=1647446029&step=864","host":["https://vdc.xelon.ch"],"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","metrics","cpuCluster"],"query":[{"key":"start","value":"1647359629"},{"key":"end","value":"1647446029"},{"key":"step","value":"864"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|9ad83028-18a8-4261-a3ae-67ae731e7f93|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=9ad83028-18a8-4261-a3ae-67ae731e7f93"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 16 Mar 2022 16:04:13 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"0\": [\n        20.569,\n        7.542,\n        7.506,\n        7.534,\n        7.353,\n        7.421,\n        7.716,\n        7.317,\n        7.612,\n        7.346,\n        7.69,\n        7.76,\n        7.569,\n        7.521,\n        8.587,\n        7.679,\n        7.673,\n        7.479,\n        8.317,\n        7.561,\n        7.667,\n        8.202,\n        7.554,\n        8.137,\n        7.771,\n        7.86,\n        7.698\n    ],\n    \"labels\": [\n        \"16 Mar 09:03:25\",\n        \"16 Mar 09:03:49\",\n        \"16 Mar 10:03:13\",\n        \"16 Mar 10:03:37\",\n        \"16 Mar 10:03:01\",\n        \"16 Mar 10:03:25\",\n        \"16 Mar 11:03:49\",\n        \"16 Mar 11:03:13\",\n        \"16 Mar 11:03:37\",\n        \"16 Mar 11:03:01\",\n        \"16 Mar 12:03:25\",\n        \"16 Mar 12:03:49\",\n        \"16 Mar 12:03:13\",\n        \"16 Mar 12:03:37\",\n        \"16 Mar 13:03:01\",\n        \"16 Mar 13:03:25\",\n        \"16 Mar 13:03:49\",\n        \"16 Mar 13:03:13\",\n        \"16 Mar 13:03:37\",\n        \"16 Mar 14:03:01\",\n        \"16 Mar 14:03:25\",\n        \"16 Mar 14:03:49\",\n        \"16 Mar 14:03:13\",\n        \"16 Mar 15:03:37\",\n        \"16 Mar 15:03:01\",\n        \"16 Mar 15:03:25\",\n        \"16 Mar 15:03:49\"\n    ]\n}"}],"_postman_id":"a06c9622-10be-4860-9ea7-dc6331ce2766"},{"name":"Node memory usage","id":"7822a98f-d806-452f-916f-fed131622f55","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/metrics/memoryNodes?start=1647359629&end=1647446029&step=864","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","metrics","memoryNodes"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Seconds since Jan 01, 1970. Get timestamp at <a href=\"https://www.unixtimestamp.com/\">https://www.unixtimestamp.com/</a></p>\n","type":"text/plain"},"key":"start","value":"1647359629"},{"description":{"content":"<p>Seconds since Jan 01, 1970. Get timestamp at <a href=\"https://www.unixtimestamp.com/\">https://www.unixtimestamp.com/</a></p>\n","type":"text/plain"},"key":"end","value":"1647446029"},{"description":{"content":"<p>Rancher's internal monitoring benchmark</p>\n","type":"text/plain"},"key":"step","value":"864"}],"variable":[]}},"response":[{"id":"9c95fb93-a957-469f-9428-a26fa9a1ef0c","name":"Node memory usage","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/metrics/memoryNodes?start=1647359629&end=1647446029&step=864","host":["https://vdc.xelon.ch"],"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","metrics","memoryNodes"],"query":[{"key":"start","value":"1647359629"},{"key":"end","value":"1647446029"},{"key":"step","value":"864"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|a4d6d39b-cd94-4111-bced-0cddb9bdd93b|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=a4d6d39b-cd94-4111-bced-0cddb9bdd93b"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 16 Mar 2022 16:06:29 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"ranchiknode1\": [\n        55.702,\n        50.297,\n        50.215,\n        50.135,\n        49.887,\n        49.995,\n        49.879,\n        49.968,\n        50.135,\n        50.091,\n        50.529,\n        50.661,\n        50.483,\n        49.599,\n        49.634,\n        49.383,\n        49.426,\n        49.396,\n        49.732,\n        49.635,\n        49.719,\n        49.88,\n        49.995,\n        50.119,\n        50.133,\n        50.16,\n        50.309\n    ],\n    \"labels\": [\n        \"16 Mar 09:03:25\",\n        \"16 Mar 09:03:49\",\n        \"16 Mar 10:03:13\",\n        \"16 Mar 10:03:37\",\n        \"16 Mar 10:03:01\",\n        \"16 Mar 10:03:25\",\n        \"16 Mar 11:03:49\",\n        \"16 Mar 11:03:13\",\n        \"16 Mar 11:03:37\",\n        \"16 Mar 11:03:01\",\n        \"16 Mar 12:03:25\",\n        \"16 Mar 12:03:49\",\n        \"16 Mar 12:03:13\",\n        \"16 Mar 12:03:37\",\n        \"16 Mar 13:03:01\",\n        \"16 Mar 13:03:25\",\n        \"16 Mar 13:03:49\",\n        \"16 Mar 13:03:13\",\n        \"16 Mar 13:03:37\",\n        \"16 Mar 14:03:01\",\n        \"16 Mar 14:03:25\",\n        \"16 Mar 14:03:49\",\n        \"16 Mar 14:03:13\",\n        \"16 Mar 15:03:37\",\n        \"16 Mar 15:03:01\",\n        \"16 Mar 15:03:25\",\n        \"16 Mar 15:03:49\"\n    ],\n    \"ranchiknode2\": [\n        38.984,\n        35.949,\n        35.891,\n        35.924,\n        35.958,\n        35.809,\n        35.861,\n        35.963,\n        36.045,\n        36.176,\n        36.077,\n        36.204,\n        36.345,\n        36.382,\n        36.491,\n        36.599,\n        36.686,\n        36.831,\n        36.837,\n        37.008,\n        37.076,\n        37.186,\n        36.859,\n        37.046,\n        37.112,\n        37.172,\n        37.266\n    ]\n}"}],"_postman_id":"7822a98f-d806-452f-916f-fed131622f55"},{"name":"Cluster memory usage","id":"04aebf6a-1fef-4bde-8335-89b5621edf0d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/metrics/memoryCluster?start=1647359629&end=1647446029&step=864","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","metrics","memoryCluster"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Seconds since Jan 01, 1970. Get timestamp at <a href=\"https://www.unixtimestamp.com/\">https://www.unixtimestamp.com/</a></p>\n","type":"text/plain"},"key":"start","value":"1647359629"},{"description":{"content":"<p>Seconds since Jan 01, 1970. Get timestamp at <a href=\"https://www.unixtimestamp.com/\">https://www.unixtimestamp.com/</a></p>\n","type":"text/plain"},"key":"end","value":"1647446029"},{"description":{"content":"<p>Rancher's internal monitoring benchmark</p>\n","type":"text/plain"},"key":"step","value":"864"}],"variable":[]}},"response":[{"id":"ec9a87e5-a69a-441f-a4ff-bd280dd6f39c","name":"Cluster memory usage","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/metrics/memoryCluster?start=1647359629&end=1647446029&step=864","host":["https://vdc.xelon.ch"],"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","metrics","memoryCluster"],"query":[{"key":"start","value":"1647359629"},{"key":"end","value":"1647446029"},{"key":"step","value":"864"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|e7e35018-46ef-4154-b3a5-48c795957226|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=e7e35018-46ef-4154-b3a5-48c795957226"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 16 Mar 2022 16:07:26 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n\t\"0\": [\n\t\t47.343,\n\t\t43.123,\n\t\t43.053,\n\t\t43.029,\n\t\t42.922,\n\t\t42.902,\n\t\t42.87,\n\t\t42.965,\n\t\t43.09,\n\t\t43.134,\n\t\t43.303,\n\t\t43.433,\n\t\t43.414,\n\t\t42.991,\n\t\t43.063,\n\t\t42.991,\n\t\t43.056,\n\t\t43.114,\n\t\t43.285,\n\t\t43.322,\n\t\t43.397,\n\t\t43.533,\n\t\t43.427,\n\t\t43.583,\n\t\t43.622,\n\t\t43.666,\n\t\t43.788\n\t],\n\t\"labels\": [\n\t\t\"16 Mar 09:03:25\",\n\t\t\"16 Mar 09:03:49\",\n\t\t\"16 Mar 10:03:13\",\n\t\t\"16 Mar 10:03:37\",\n\t\t\"16 Mar 10:03:01\",\n\t\t\"16 Mar 10:03:25\",\n\t\t\"16 Mar 11:03:49\",\n\t\t\"16 Mar 11:03:13\",\n\t\t\"16 Mar 11:03:37\",\n\t\t\"16 Mar 11:03:01\",\n\t\t\"16 Mar 12:03:25\",\n\t\t\"16 Mar 12:03:49\",\n\t\t\"16 Mar 12:03:13\",\n\t\t\"16 Mar 12:03:37\",\n\t\t\"16 Mar 13:03:01\",\n\t\t\"16 Mar 13:03:25\",\n\t\t\"16 Mar 13:03:49\",\n\t\t\"16 Mar 13:03:13\",\n\t\t\"16 Mar 13:03:37\",\n\t\t\"16 Mar 14:03:01\",\n\t\t\"16 Mar 14:03:25\",\n\t\t\"16 Mar 14:03:49\",\n\t\t\"16 Mar 14:03:13\",\n\t\t\"16 Mar 15:03:37\",\n\t\t\"16 Mar 15:03:01\",\n\t\t\"16 Mar 15:03:25\",\n\t\t\"16 Mar 15:03:49\"\n\t]\n}"}],"_postman_id":"04aebf6a-1fef-4bde-8335-89b5621edf0d"}],"id":"beacd345-a249-4294-a1f0-062852d71008","_postman_id":"beacd345-a249-4294-a1f0-062852d71008","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Nodes","item":[{"name":"Recycle node","id":"b2a01097-9d8b-4c80-90e0-65de15dad5bc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/nodes/<NODE_ID>/recycle","description":"<p>This endpoint lets you recycle a specific Node by its <code>id</code> in the URL.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","nodes","<NODE_ID>","recycle"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"ef59cfe8-c89e-4a57-a6a0-5077fdcd5372","name":"Recycle node","originalRequest":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/nodes/<NODE_ID>/recycle"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|094e1c78-1eb3-469e-b100-e08998a8235c|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=094e1c78-1eb3-469e-b100-e08998a8235c"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 16 Mar 2022 15:51:59 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"498"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Node c-ccnwt:m-82lv2 has been recycled.\"\n}"}],"_postman_id":"b2a01097-9d8b-4c80-90e0-65de15dad5bc"},{"name":"Resize Node Pool","id":"eadafa4c-7dba-4378-9cd0-62e527a062a8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"flexible_nodes\": null,\n\t\"hostnamePrefix\": \"<PREFIX>\",\n\t\"is_flexible_nodes\": false,\n\t\"nodes\": 3,\n\t\"nodeTemplateId\": \"<TEMPLATE_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/nodePool/<NODE_POOL_ID>/resize","description":"<p>Use this endpoint to adjust the configuration of a specific Node Pool.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","nodePool","<NODE_POOL_ID>","resize"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"306906e8-3493-4c7a-9d0d-65dd28608545","name":"Resize Node Pool","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"flexible_nodes\": null,\n\t\"hostnamePrefix\": \"<PREFIX>\",\n\t\"is_flexible_nodes\": false,\n\t\"nodes\": 3,\n\t\"nodeTemplateId\": \"<TEMPLATE_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/nodePool/<NODE_POOL_ID>/resize"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|e2c7522a-2b32-4452-a56c-85564ac4848e|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=e2c7522a-2b32-4452-a56c-85564ac4848e"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 16 Mar 2022 15:42:25 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Node pool size has been adjusted.\"\n}"}],"_postman_id":"eadafa4c-7dba-4378-9cd0-62e527a062a8"}],"id":"d953ba19-acb7-4f56-80f7-a6c3f71f734a","description":"<p>Each Node has its own unique <code>id</code> which looks like <code>c-ccnwt:t-8wsdx.</code></p>\n","_postman_id":"d953ba19-acb7-4f56-80f7-a6c3f71f734a","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Create new Rancher Cluster","id":"e1de3efd-114d-46b6-9e7a-ab9a3c9f4e43","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 4,\n\t\"kubernetes_version\": \"v1.20.4\",\n\t\"name\": \"Cluster Name\",\n\t\"nodepool\": [\n\t\t{\n\t\t\t\"cpucores\": 5,\n\t\t\t\"flexible_nodes\": {\n\t\t\t\t\"cpu_load_less\": 10,\n\t\t\t\t\"cpu_load_more\": 75,\n\t\t\t\t\"max_nodes\": 4,\n\t\t\t\t\"min_nodes\": 2,\n\t\t\t\t\"ram_load_less\": 10,\n\t\t\t\t\"ram_load_more\": 75\n\t\t\t},\n\t\t\t\"is_flexible_nodes\": true,\n\t\t\t\"memory\": 5,\n\t\t\t\"node_disk_size\": 65,\n\t\t\t\"nodecount\": 2\n\t\t}\n\t],\n\t\"tenantid\": \"<TENANT_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/kubernetes/cluster","description":"<p>This endpoint allows you to create a Rahcner-based Kubernetes Cluster.</p>\n<blockquote>\n<p>Please note that Rancher Clusters are no longer supported. Get in touch with our support team for any questions.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","kubernetes","cluster"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"fcd2e696-9cc9-4f9d-9222-db9fa364f62a","name":"Create new Rancher Cluster","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 4,\n\t\"kubernetes_version\": \"v1.20.4\",\n\t\"name\": \"Cluster Name\",\n\t\"nodepool\": [\n\t\t{\n\t\t\t\"cpucores\": 5,\n\t\t\t\"flexible_nodes\": {\n\t\t\t\t\"cpu_load_less\": 10,\n\t\t\t\t\"cpu_load_more\": 75,\n\t\t\t\t\"max_nodes\": 4,\n\t\t\t\t\"min_nodes\": 2,\n\t\t\t\t\"ram_load_less\": 10,\n\t\t\t\t\"ram_load_more\": 75\n\t\t\t},\n\t\t\t\"is_flexible_nodes\": true,\n\t\t\t\"memory\": 5,\n\t\t\t\"node_disk_size\": 65,\n\t\t\t\"nodecount\": 2\n\t\t}\n\t],\n\t\"tenantid\": \"2sn54783n\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/kubernetes/cluster"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|548c6cde-3ffd-40d7-b5db-022b29270ba5|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=548c6cde-3ffd-40d7-b5db-022b29270ba5"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Tue, 15 Mar 2022 11:49:57 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Cluster <CLUSTER_ID> is being created\",\n    \"cluster\": {\n        \"kubernetes_id\": \"<CLUSTER_ID>\",\n        \"dashboard_url\": \"https://randome0a6c7adc62e1aa.xelon.io\",\n        \"network_id\": 56,\n        \"cluster_description_name\": \"Cluster Name\",\n        \"hv_system_id\": 4,\n        \"is_flexible_nodes\": true,\n        \"min_nodes\": 2,\n        \"max_nodes\": 4,\n        \"cpu_load_more\": 75,\n        \"cpu_load_less\": 10,\n        \"ram_load_more\": 75,\n        \"ram_load_less\": 10,\n        \"updated_at\": \"2022-03-15T12:49:56+01:00\",\n        \"created_at\": \"2022-03-15T12:49:56+01:00\",\n        \"id\": 1234,\n        \"hv_type\": \"public\"\n    }\n}"}],"_postman_id":"e1de3efd-114d-46b6-9e7a-ab9a3c9f4e43"},{"name":"Rancher Cluster info","id":"dd27baa3-25c2-4a7a-afda-5056ae1a6419","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>","description":"<p>Use this endpoint to get the most comprehensive set of information about a specific Rancher-based Cluster.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"1b2a6fba-4a22-4b0d-89dc-b5083611f36d","name":"Rancher Cluster info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|bf7629fa-88ef-44e4-95d8-4bc6d8b5067b|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=bf7629fa-88ef-44e4-95d8-4bc6d8b5067b"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Wed, 16 Mar 2022 15:38:15 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"dashboardtoken\": \"<DASHBOARD_TOKEN>\",\n    \"dashboard_url\": \"<DASHBOARD_URL>\",\n    \"is_flexible_nodes\": 0,\n    \"min_nodes\": 0,\n    \"max_nodes\": 0,\n    \"cpu_load_more\": 0,\n    \"cpu_load_less\": 0,\n    \"ram_load_more\": 0,\n    \"ram_load_less\": 0,\n    \"kubernetes_version_rancher\": \"v1.20.4-rancher1-1\",\n    \"kubernetes_version\": \"v1.20.4\",\n    \"created_at\": \"2022-03-16T10:18:52+01:00\",\n    \"config\": \"<CONFIG>\",\n    \"updated_at\": \"2022-03-16T10:43:24+01:00\",\n    \"cluster_description_name\": \"Cluster Name\",\n    \"deleted_at\": null,\n    \"id\": 1234,\n    \"capacity\": {\n        \"RAM\": 8,\n        \"CPU\": \"8\",\n        \"version\": \"v1.20.4\"\n    },\n    \"nodePools\": [\n        {\n            \"id\": \"<NODE_ID>\",\n            \"name\": \"Name\",\n            \"hostnamePrefix\": \"Prefix\",\n            \"nodeTemplateId\": \"<NODE_TEMPLATE_ID>\",\n            \"nodes\": [\n                {\n                    \"id\": \"<NODE_ID>\",\n                    \"state\": \"active\",\n                    \"created_at\": \"2022-03-16T10:27:15+01:00\",\n                    \"clusterId\": \"123-qwe\",\n                    \"ip\": \"11.22.33.44\",\n                    \"hostname\": \"hostname\",\n                    \"nodePoolId\": \"<NODE_ID>\",\n                    \"nodeTemplateId\": \"<NODE_TEMPLATE_ID>\",\n                    \"labels\": []\n                }\n            ]\n        }\n    ],\n    \"labels\": [],\n    \"hostnamePrefix\": \"prefix\",\n    \"nodeTemplateId\": \"<NODE_TEMPLATE_ID>\",\n    \"monirotingStatus\": true,\n    \"state\": \"active\",\n    \"hv_type\": null\n}"}],"_postman_id":"dd27baa3-25c2-4a7a-afda-5056ae1a6419"}],"id":"7f6ea5e1-20ff-4ce3-a747-486bb5286a22","description":"<blockquote>\n<p>Rancher-based Kubernetes Clusters are no longer supported. Please reach out to our team if you want to update your k8s configuration.</p>\n</blockquote>\n","_postman_id":"7f6ea5e1-20ff-4ce3-a747-486bb5286a22","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Nodes","item":[{"name":"Add flexible Node","id":"887082ab-5df7-477b-9980-7688bf873538","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"flexible_nodes\": {\n\t\t\"cpu_load_less\": 10,\n\t\t\"cpu_load_more\": 75,\n\t\t\"max_nodes\": 5,\n\t\t\"min_nodes\": 1,\n\t\t\"ram_load_less\": 10,\n\t\t\"ram_load_more\": 75\n\t},\n\t\"is_flexible_nodes\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/kubernetes/cloud-init/<CLUSTER_ID>/node","description":"<p>Use this endpoint to add a flexible Node to your Kubernetes Cluster.</p>\n<p>For <code>flexible_nodes</code>, the following parameters should be specified:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cpu_load_less</code></td>\n<td>Decrease number of nodes if CPU load is less that this number, %.</td>\n</tr>\n<tr>\n<td><code>cpu_load_more</code></td>\n<td>Increase number of nodes if CPU load is more than this number, %.</td>\n</tr>\n<tr>\n<td><code>max_nodes</code></td>\n<td>Maximum amount of nodes. Min: 1, Max: 20.</td>\n</tr>\n<tr>\n<td><code>min_nodes</code></td>\n<td>Minimum amount of nodes. Min: 1, Max: 20.</td>\n</tr>\n<tr>\n<td><code>ram_load_less</code></td>\n<td>Decrease number of nodes if RAM load is less that this number, %.</td>\n</tr>\n<tr>\n<td><code>ram_load_more</code></td>\n<td>Increase number of nodes if RAM load is less that this number, %.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","kubernetes","cloud-init","<CLUSTER_ID>","node"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"b6be405d-740d-4325-82d5-a9ce0d2ec450","name":"Add flexible Node","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"flexible_nodes\": {\n\t\t\"cpu_load_less\": 10,\n\t\t\"cpu_load_more\": 75,\n\t\t\"max_nodes\": 5,\n\t\t\"min_nodes\": 3,\n\t\t\"ram_load_less\": 10,\n\t\t\"ram_load_more\": 75\n\t},\n\t\"is_flexible_nodes\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/kubernetes/cloud-init/<CLUSTER_ID>/node"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|a02f7c37-d499-48d8-a824-3f4049b6bce4|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=a02f7c37-d499-48d8-a824-3f4049b6bce4"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Tue, 15 Mar 2022 11:00:58 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Node successfully added.\"\n}"}],"_postman_id":"887082ab-5df7-477b-9980-7688bf873538"},{"name":"Add fixed Node","id":"358433c2-1213-4f57-bdd8-362d877bbfd6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cpu\": 4,\n\t\"node_disk_size\": 60,\n\t\"node_type\": \"worker\",\n\t\"ram\": 4\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/kubernetes/cloud-init/<CLUSTER_ID>/node","description":"<p>This endpoint lets you create a fixed Node within your Kubernetes Cluster.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cpu</code></td>\n<td>Amount of connected CPU cores. Min: 2; Max: 15.</td>\n</tr>\n<tr>\n<td><code>ram</code></td>\n<td>Amount of connected RAM GBs. Min: 2; Max: 15.</td>\n</tr>\n<tr>\n<td><code>node_disk_size</code></td>\n<td>Amount of connected Disk volume in GBs. Min: 50; Max: 512.</td>\n</tr>\n<tr>\n<td><code>node_type</code></td>\n<td>Can be either <code>worker</code> or <code>master</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","kubernetes","cloud-init","<CLUSTER_ID>","node"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"18ae8cc2-9e9e-4906-b33c-bb465ffb44c5","name":"Add fixed Node","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cpu\": 4,\n\t\"node_disk_size\": 60,\n\t\"node_type\": \"worker\",\n\t\"ram\": 4\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/kubernetes/cloud-init/4f0caddd17a0/node"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|f8a3cbeb-eb70-4565-a992-deec907d3e48|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=f8a3cbeb-eb70-4565-a992-deec907d3e48"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Tue, 15 Mar 2022 11:08:59 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"498"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Node successfully added.\"\n}"}],"_postman_id":"358433c2-1213-4f57-bdd8-362d877bbfd6"},{"name":"Delete Node","id":"8bd01d7a-ee16-4f74-9b19-2c4a74149e7c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/kubernetes/cloud-init/<CLUSTER_ID>/node?hostname=<NODE_HOSTNAME>","description":"<p>This endpoint deletes a specific node by its <code>hostname</code> identified as a query parameter.</p>\n<blockquote>\n<p>You can find the list of nodes from the <code>GET</code> <strong>Cluster info</strong> endpoint.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","kubernetes","cloud-init","<CLUSTER_ID>","node"],"host":["https://vdc.xelon.ch"],"query":[{"key":"hostname","value":"<NODE_HOSTNAME>"}],"variable":[]}},"response":[{"id":"3fe84a6c-08fc-4e21-a355-1d89db78781e","name":"Delete Node","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/kubernetes/cloud-init/<CLUSTER_ID>/node?hostname=<NODE_HOSTNAME>","host":["https://vdc.xelon.ch"],"path":["api","service","kubernetes","cloud-init","<CLUSTER_ID>","node"],"query":[{"key":"hostname","value":"<NODE_HOSTNAME>"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|3c45b980-f494-4580-a4cd-6b366201f6c2|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=3c45b980-f494-4580-a4cd-6b366201f6c2"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Tue, 15 Mar 2022 11:18:14 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"498"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Node <NODENAME> is being deleted\"\n}"}],"_postman_id":"8bd01d7a-ee16-4f74-9b19-2c4a74149e7c"}],"id":"527eec93-8a28-4bad-a7a3-4d9f1e483862","_postman_id":"527eec93-8a28-4bad-a7a3-4d9f1e483862","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"List of all Clusters","id":"a98ecb46-b977-491e-9506-7738fb609b3b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster?cloudId=<CLOUD_ID>","description":"<p>Use this endpoint to get the list of all available Kubernetes Clusters within your organization.</p>\n<blockquote>\n<p>Clusters are identified b their <code>kubernetes_id</code>, not the <code>id</code>.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster"],"host":["https://vdc.xelon.ch"],"query":[{"key":"cloudId","value":"<CLOUD_ID>"}],"variable":[]}},"response":[{"id":"6da177c2-d235-4e96-ba7e-c27b332462ab","name":"List of all Clusters","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/2sn54783n/kubernetes/cluster"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|6e79999f-d565-4754-9d37-ac2fd928956c|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=6e79999f-d565-4754-9d37-ac2fd928956c"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Mon, 14 Mar 2022 12:35:56 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 1234,\n        \"kubernetes_id\": \"<CLUSTER_ID>\",\n        \"network_id\": 123,\n        \"created_at\": \"2022-03-14T13:17:19+01:00\",\n        \"cluster_description_name\": \"Cluster Name\",\n        \"status\": true,\n        \"hv_system_id\": 4,\n        \"tenantname\": \"Organization name\",\n        \"cloud_init\": true,\n        \"hv_type\": \"public\"\n    }\n]"}],"_postman_id":"a98ecb46-b977-491e-9506-7738fb609b3b"},{"name":"Create new Cluster","id":"a2ad00d7-0dbc-4234-b389-052b5dd707ac","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cluster_name\": \"Cluster Name\",\n\t\"cpu\": 4,\n\t\"flexible_nodes\": {\n\t\t\"cpu_load_less\": 10,\n\t\t\"cpu_load_more\": 75,\n\t\t\"max_nodes\": 3,\n\t\t\"min_nodes\": 2,\n\t\t\"ram_load_less\": 10,\n\t\t\"ram_load_more\": 75\n\t},\n\t\"hypervisor_system_id\": 1,\n\t\"is_flexible_nodes\": true,\n\t\"node_count\": 2,\n\t\"node_disk_size\": 60,\n\t\"ram\": 4\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cloud-init/","description":"<p>Use this endpoint to create a Cloud Init Kubernetes cluster.</p>\n<blockquote>\n<p>You'll have a deployed cluster in around 15 minutes.</p>\n</blockquote>\n<h3 id=\"request-body\">Request body</h3>\n<h4 id=\"configuration\">Configuration</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cluster_name</code></td>\n<td>Display name of your Cluster. Only lowercase letters, numbers and hyphen-minus ( - ) allowed, without spaces.</td>\n</tr>\n<tr>\n<td><code>cpu</code></td>\n<td>Amount of connected CPU cores. Min: 2; Max: 15.</td>\n</tr>\n<tr>\n<td><code>ram</code></td>\n<td>Amount of connected RAM GBs. Min: 2; Max: 15.</td>\n</tr>\n<tr>\n<td><code>node_disk_size</code></td>\n<td>Amount of connected Disk volume in GBs. Min: 50; Max: 512.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"flexible-nodes\">Flexible nodes</h4>\n<p>If <code>flexible_nodes</code> is not false, the following parameters should be specified.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cpu_load_less</code></td>\n<td>Decrease number of nodes if CPU load is less that this number, %.</td>\n</tr>\n<tr>\n<td><code>cpu_load_more</code></td>\n<td>Increase number of nodes if CPU load is more than this number, %.</td>\n</tr>\n<tr>\n<td><code>max_nodes</code></td>\n<td>Maximum amount of nodes. Min: 1, Max: 20.</td>\n</tr>\n<tr>\n<td><code>min_nodes</code></td>\n<td>Minimum amount of nodes. Min: 1, Max: 20.</td>\n</tr>\n<tr>\n<td><code>ram_load_less</code></td>\n<td>Decrease number of nodes if RAM load is less that this number, %.</td>\n</tr>\n<tr>\n<td><code>ram_load_more</code></td>\n<td>Increase number of nodes if RAM load is less that this number, %.</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Nodes are being increased/decreased by 1 every 15 minutes.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cloud-init",""],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"a2ad00d7-0dbc-4234-b389-052b5dd707ac"},{"name":"Cluster info","id":"0410354e-c22d-4351-8678-8bbcd44b18da","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>","description":"<p>Use this endpoint to get the most comprehensive set of information about a specific cluster.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>network_id</code></td>\n<td>An ID of a Cluster's LAN network.</td>\n</tr>\n<tr>\n<td><code>config</code></td>\n<td>A Cluster's config file content.</td>\n</tr>\n<tr>\n<td><code>dashboardtoken</code></td>\n<td>A unique token for accessing the Kubernetes Dashboard.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>When <code>true</code>, the Cluster is deployed and available for API calls.</td>\n</tr>\n<tr>\n<td><code>total_storage</code></td>\n<td>A string value that indicates the sum of all node's storage within the Cluster.</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>A node's <code>capacity</code> <code>RAM</code> and <code>Storage</code> parameters are indicated in kilobytes.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"d88a93de-40d9-47ad-a550-d63cfe855da8","name":"Cluster info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 08 Jun 2022 09:40:42 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=%2Fmf1L4MCX1l5ChE7rX4nXRJFsQZgRTJbqc2AfUX91IANkLesJSz6gMV6kKLHw9fs%2BXJffPe%2B8pSk%2BRnojcusD1glputNobjYj6oZ1ClMq%2FxHxnmUzv1KCgNgaR8BxsU%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7180aae26b672319-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"dashboardtoken\": \"<DASHBOARD_TOKEN>\",\n    \"dashboard_url\": \"<DASHBOARD_URL>\",\n    \"is_flexible_nodes\": 0,\n    \"min_nodes\": 5,\n    \"max_nodes\": 8,\n    \"cpu_load_more\": 75,\n    \"cpu_load_less\": 50,\n    \"ram_load_more\": 75,\n    \"ram_load_less\": 50,\n    \"kubernetes_version_rancher\": \"v1.20.4-rancher1-1\",\n    \"kubernetes_version\": \"v1.20.4\",\n    \"created_at\": \"2021-07-30T11:02:27+02:00\",\n    \"config\": \"<CONFIG>\",\n    \"cluster_description_name\": \"Cluster Name\",\n    \"deleted_at\": null,\n    \"id\": 1234,\n    \"capacity\": {\n        \"RAM\": 47,\n        \"CPU\": \"24\",\n        \"version\": \"v1.20.4\"\n    },\n    \"nodePools\": [\n        {\n            \"id\": \"<NODE_ID>\",\n            \"name\": \"Node name\",\n            \"hostnamePrefix\": \"prefix\",\n            \"nodeTemplateId\": \"templateid\",\n            \"nodes\": [\n                {\n                    \"id\": \"nodeid\",\n                    \"state\": \"active\",\n                    \"created_at\": \"2021-12-22T10:30:05+01:00\",\n                    \"clusterId\": \"clusterid\",\n                    \"ip\": \"1.2.3.4\",\n                    \"hostname\": \"hostname\",\n                    \"nodePoolId\": \"nodepoolid\",\n                    \"nodeTemplateId\": \"templateid\",\n                    \"labels\": []\n                }\n            ]\n        }\n    ],\n    \"labels\": [],\n    \"hostnamePrefix\": \"hostname-prefix\",\n    \"nodeTemplateId\": \"node-template-id\",\n    \"monirotingStatus\": true,\n    \"state\": \"active\",\n    \"hv_type\": null\n}"}],"_postman_id":"0410354e-c22d-4351-8678-8bbcd44b18da"},{"name":"Get Cluster config","id":"d9740cef-b053-496a-95aa-df43f75d605e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/config","description":"<p>Use this endpoint to get the config file content of a specific Cluster in a YAML format.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>","config"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"08558fa1-63f7-4473-b6b0-849d7bed1378","name":"Get Cluster config","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>/config"},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Date","value":"Wed, 08 Jun 2022 14:55:14 GMT"},{"key":"Content-Type","value":"text/plain; charset=UTF-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"content-disposition","value":"attachment; filename=\"config.txt\""},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=562TAMVZOOxzLlYVftuly%2FtT%2BOYCIYc7jW2lhF3MahFnijHT1kqlIa5kT940aGy4Rj3zirn0hTe14t8WHvT8QHE9f9DRTEdP6l5ENy1Vnet7SZS9lvVfPi6BLd%2BMAPA%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"718277a0aa6977af-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"apiVersion: v1\nkind: Config\nclusters:\n- name: \"name\"\n  cluster:\n    server: \"<SERVER_LINK>\"\n  certificate-authority-data: \"<KEY>\"\n\nusers:\n- name: \"name\"\n  user:\n    token: \"<token>\"\n\n\ncontexts:\n- name: \"name\"\n  context:\n    user: \"name\"\n    cluster: \"name\"\n\ncurrent-context: \"name\""}],"_postman_id":"d9740cef-b053-496a-95aa-df43f75d605e"},{"name":"List of Cluster's Service Accounts","id":"f97243c2-451e-41e3-a5f0-6cbce2a0c239","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/kubernetes/cloud-init/<CLUSTER_ID>/service-accounts?namespace=<NAMESPACE>","description":"<p>This endpoint retrieves a list of all available Service Accounts within the Cluster.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","kubernetes","cloud-init","<CLUSTER_ID>","service-accounts"],"host":["https://vdc.xelon.ch"],"query":[{"key":"namespace","value":"<NAMESPACE>"}],"variable":[]}},"response":[{"id":"01d1117e-be63-4777-8615-efa1dfbe1e8f","name":"List of Cluster's Service Accounts","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/kubernetes/cloud-init/<CLUSTER_ID>/service-accounts"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 09 Jun 2022 11:07:40 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=aVWY45N7twKpAQF2MYNxzjNkw06zFzso7c231NJ9sje21hXFRMUQgFJnsbjc5Ch5ww%2Fknr34WWHn7gCO5uunbmDzYG8yhSM8CrQ%2FFySqoKwOirXOUJj4HeW2RvK3Tps%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7189679ea93c77bc-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"name\": \"cert-manager\",\n        \"namespace\": \"cert-manager\",\n        \"uid\": \"<U-ID>\",\n        \"secret\": {\n            \"name\": \"token-name\",\n            \"token\": \"<TOKEN>\"\n        }\n    }\n]"}],"_postman_id":"f97243c2-451e-41e3-a5f0-6cbce2a0c239"},{"name":"Delete Kubernetes Cluster","id":"ee453c59-4a1d-4544-a31a-06f92173fae3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>","description":"<p>Use this endpoint to delete a specific Kubernetes Cluster. Request body will require your account's <code>password</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","kubernetes","cluster","<CLUSTER_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"75b048c4-f0d3-4af3-88cc-099efa38f27e","name":"Delete Kubernetes Cluster","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/kubernetes/cluster/<CLUSTER_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 14:33:57 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=bfkWAl0ES9G5JYFmSzXITTYu3Gry2%2FmXXX%2FOOnu%2B46%2F9YN3w%2Bc9HyXVtnwylATyus3jE%2BcZ0kWnSphPnwaldkzCVw5QHzny8Gz3ukfz02PQHrUAyGukP3nmfdbIa5w%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6edeafb689b578a5-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Cluster has been deleted.\"\n}"}],"_postman_id":"ee453c59-4a1d-4544-a31a-06f92173fae3"},{"name":"Kubernetes versions","id":"a6260d16-c10f-4142-901c-86699e087487","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/kubernetes/cluster/version","description":"<p>This endpoint retrieves an array of Kubernetes versions, with the latest on at the end.</p>\n<blockquote>\n<p><code>value</code> and <code>label</code> are equal.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","kubernetes","cluster","version"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"f383433e-dded-47c0-bf2c-2dc0b5811156","name":"Kubernetes versions","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/kubernetes/cluster/version"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 15:54:41 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=IM8WDWLGuVVbZ3mfq5DsQP1%2BGS10%2B05TGNfm%2FKzTu6bDjHV3bNOF3%2Bk6EcsN1JZbvuX57rJv3YtrLRE746UIbGMSJs5%2BbLdET1ojakaSm34LAMP1AnDVtDqV4tcRUQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6edf25f57f2077aa-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"label\": \"v1.15.9\",\n        \"value\": \"v1.15.9\"\n    },\n    {\n        \"label\": \"v1.16.6\",\n        \"value\": \"v1.16.6\"\n    },\n    {\n        \"label\": \"v1.17.4\",\n        \"value\": \"v1.17.4\"\n    },\n    {\n        \"label\": \"v1.20.4\",\n        \"value\": \"v1.20.4\"\n    }\n]"}],"_postman_id":"a6260d16-c10f-4142-901c-86699e087487"}],"id":"873aa5a8-bacf-4094-b6b4-4b78440e5507","description":"<p>Xelon HQ offers a Managed Kubernetes Service and lets you create and scale clusters by the click of the mouse, without taking care of server infrastructure or control plane.</p>\n<blockquote>\n<p>Usually, it takes around 15 minutes to create a new Kubernetes cluster.</p>\n</blockquote>\n<h3 id=\"creating-clusters\">Creating Clusters</h3>\n<p>Creating a Cluster requires a set of configuration parameters, such as name, CPU/RAM amount, disk volume, and so on. You can also set flexible nodes mode and define rules by yourself.</p>\n<h3 id=\"managing-clusters\">Managing Clusters</h3>\n<p>Each cluster has its own unique <code>kubernetes_id</code>. Use it to adjust or delete a specific cluster and make any related operations.</p>\n","_postman_id":"873aa5a8-bacf-4094-b6b4-4b78440e5507","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Billing Plan","item":[{"name":"Cost per hour","event":[{"listen":"test","script":{"id":"5d996df4-daca-4249-a7b4-0a546f2893e9","exec":["pm.test(\"Correct response format JSON\", function(){","    pm.response.to.have.jsonBody()","});","const jsonData = pm.response.json();","pm.test(\"res should exist, be a object\", function () {","    pm.expect(jsonData).to.be.a(\"object\");","});","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","pm.test(\"Check thet we have all declared fields\", function(){","    pm.expect(jsonData).to.have.property(\"cpuPerHour\");","    pm.expect(jsonData).to.have.property(\"memoryPerHour\");","    pm.expect(jsonData).to.have.property(\"diskPerHour\");","});","pm.test('Check typeOf propertys', function(){","    pm.expect(jsonData.cpuPerHour).to.be.a(\"Number\");","    pm.expect(jsonData.memoryPerHour).to.be.a(\"Number\");","    pm.expect(jsonData.diskPerHour).to.be.a(\"Number\");","})"],"type":"text/javascript"}}],"id":"6631b2c7-bda9-4a34-916a-3ce7ab5bd79c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/prices-per-hour","description":"<p>Returns hourly prices calculation for computer resources.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cpuPerHour</code></td>\n<td>CPU usage pricing</td>\n</tr>\n<tr>\n<td><code>memoryPerHour</code></td>\n<td>RAM usage pricing</td>\n</tr>\n<tr>\n<td><code>diskPerHour</code></td>\n<td>GB storage pricing</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","prices-per-hour"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"ecdb677d-e37b-4b09-8512-c311a05700f6","name":"Cost per hour","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/prices-per-hour"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 18:08:00 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=pSqCAmR0Sl8MFuHSiiLq%2FsC6MCKymJkHCASzFd7iv5PdrRw3elKVJuqgaqBkyXt0ylkWXLlHAjIWmtwkoIoHwLJVeWbwZxoJuif4uEusS%2F6%2B%2FqpTMJkPjzTlZ2s9hQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed7abde5a977801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"cpuPerHour\": 0.0156,\n    \"memoryPerHour\": 0.015,\n    \"diskPerHour\": 0.00034\n}"}],"_postman_id":"6631b2c7-bda9-4a34-916a-3ce7ab5bd79c"},{"name":"Tenant billing plan","event":[{"listen":"test","script":{"id":"0186c294-0388-4b19-90f8-aceb05a6bf43","exec":[""],"type":"text/javascript"}}],"id":"3e6506b0-4309-4034-bf9e-1a34e53387b8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/billing","description":"<p>Returns per-tenant billing plan and currency data.</p>\n<p><code>currency_id</code>: <code>1</code> - CHF, <code>2</code> - USD, <code>3</code> - EUR</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","billing"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"970326d4-737c-4877-a161-dc815cd84345","name":"Tenant billing plan","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/billing"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 10:46:31 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=tr%2Fo%2BeIX9NCOtooTcc5647NO4Z1T9siodM4%2FdltLiWzZsYXtg05xzOa%2F4yHdLBevTCoHqjA5%2F5Rf1GzZfcZswoNt7aENSl7Xqo97ttd1aXuPTu1OypZMtXq2%2BWKY%2F8U%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170908e3cd077b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"tenant_identifier\": \"<TENANT_ID>\",\n    \"tenantname\": \"<TENANT_NAME_GOES_HERE>\",\n    \"type\": 1,\n    \"billingplan\": 1,\n    \"parent_identifier\": null,\n    \"billing_plan\": {\n        \"id\": 1,\n        \"name\": \"Billing Plan Name\",\n        \"currency_id\": \"1\"\n    }\n}"}],"_postman_id":"3e6506b0-4309-4034-bf9e-1a34e53387b8"},{"name":"View subtenants billing plans","id":"8bf9b0ce-2a54-4ba5-9e37-d6a7199489ce","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/table-children","description":"<p>This endpoint allows you to see all billing plans of your subtenants.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","table-children"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"77118930-183b-4ad2-9bad-a630458a0af2","name":"View subtenants billing plans","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/table-children"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 123,\n        \"name\": \"<BILLING_PLAN_NAME>\",\n        \"type\": \"<BILLING_PLAN_TYPE<\",\n        \"creator\": \"<TENANT_NAME>\",\n        \"assignedTenants\": []\n    },\n    {\n        \"id\": 456,\n        \"name\": \"<BILLING_PLAN_NAME>\",\n        \"type\": \"<BILLING_PLAN_TYPE>\",\n        \"creator\": \"<TENANT_NAME>\",\n        \"assignedTenants\": []\n    }\n]"}],"_postman_id":"8bf9b0ce-2a54-4ba5-9e37-d6a7199489ce"},{"name":"Create billing plan","id":"a7245473-567a-42d9-b816-d00ec7995f57","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"billing_frequency\": 1,\n    \"billing_frequency_name\": \"Monthly\",\n    \"currency\": 1,\n    \"currency_code\": \"CHF\",\n    \"minimum_spending\": 0,\n    \"name\": \"<NAME>\",\n    \"resource_calculation\": 1,\n    \"resource_calculation_name\": \"Hourly\",\n    \"resources\": {\n        \"1\": [\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"11.23\",\n                \"name\": \"Per CPU Core\",\n                \"price\": 0.0156,\n                \"resource_id\": 5,\n                \"slug\": \"cpu\",\n                \"type\": 1\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"10.80\",\n                \"name\": \"Per GB RAM\",\n                \"price\": 0.015,\n                \"resource_id\": 6,\n                \"slug\": \"ram\",\n                \"type\": 1\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"0.24\",\n                \"name\": \"Per GB Storage\",\n                \"price\": 0.00034,\n                \"resource_id\": 7,\n                \"slug\": \"storage\",\n                \"type\": 1\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"0.22\",\n                \"name\": \"Per GB Snapshot\",\n                \"price\": 0.0003,\n                \"resource_id\": 8,\n                \"slug\": \"snapshot\",\n                \"type\": 1\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"0.10\",\n                \"name\": \"Per GB HDD Storage\",\n                \"price\": 0.00014,\n                \"resource_id\": 39,\n                \"sslug\": \"hdd_storage\",\n                \"type\": 1\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"0.10\",\n                \"name\": \"Per GB Backup\",\n                \"price\": 0.00014,\n                \"resource_id\": 40,\n                \"slug\": \"backup\",\n                \"type\": 1\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"21.60\",\n                \"name\": \"Per Firewall instance\",\n                \"price\": 0.03,\n                \"resource_id\": 41,\n                \"slug\": \"firewall\",\n                \"type\": 1\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"21.60\",\n                \"name\": \"Per Load Balancer instance\",\n                \"price\": 0.03,\n                \"resource_id\": 42,\n                \"type\": 1\n            }\n        ],\n        \"2\": [\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"29.52\",\n                \"name\": \"Per /29 Dedicated WAN\",\n                \"price\": 0.041,\n                \"resource_id\": 1,\n                \"slug\": \"dedicated_29_wan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"50.40\",\n                \"name\": \"Per /28 Dedicated WAN\",\n                \"price\": 0.07,\n                \"resource_id\": 2,\n                \"slug\": \"dedicated_28_wan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"86.40\",\n                \"name\": \"Per /27 Dedicated WAN\",\n                \"price\": 0.12,\n                \"resource_id\": 3,\n                \"slug\": \"dedicated_27_wan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"10.01\",\n                \"name\": \"Per /24 Dedicated LAN\",\n                \"price\": 0.0139,\n                \"resource_id\": 4,\n                \"slug\": \"dedicated_24_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"199.94\",\n                \"name\": \"Per /26 Dedicated WAN\",\n                \"price\": 0.2777,\n                \"resource_id\": 27,\n                \"slug\": \"dedicated_26_wan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /1 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 47,\n                \"slug\": \"dedicated_1_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /2 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 48,\n                \"slug\": \"dedicated_2_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /3 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 49,\n                \"slug\": \"dedicated_3_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /4 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 50,\n                \"slug\": \"dedicated_4_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /5 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 51,\n                \"slug\": \"dedicated_5_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /6 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 52,\n                \"slug\": \"dedicated_6_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /7 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 53,\n                \"slug\": \"dedicated_7_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /8 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 54,\n                \"slug\": \"dedicated_8_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /9 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 55,\n                \"slug\": \"dedicated_9_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /10 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 56,\n                \"slug\": \"dedicated_10_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /11 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 57,\n                \"slug\": \"dedicated_11_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /12 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 58,\n                \"slug\": \"dedicated_12_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_pric\": \"10.58\",\n                \"name\": \"Per /13 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 59,\n                \"slug\": \"dedicated_13_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /14 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 60,\n                \"slug\": \"dedicated_14_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /15 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 61,\n                \"slug\": \"dedicated_15_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /16 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 62,\n                \"slug\": \"dedicated_16_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /17 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 63,\n                \"slug\": \"dedicated_17_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /18 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 64,\n                \"slug\": \"dedicated_18_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /19 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 65,\n                \"slug\": \"dedicated_19_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /20 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 66,\n                \"slug\": \"dedicated_20_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /21 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 67,\n                \"slug\": \"dedicated_21_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /22 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 68,\n                \"slug\": \"dedicated_22_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /23 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 69,\n                \"slug\": \"dedicated_23_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /25 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 70,\n                \"slug\": \"dedicated_25_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /26 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 71,\n                \"slug\": \"dedicated_26_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /27 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 72,\n                \"slug\": \"dedicated_27_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /28 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 73,\n                \"slug\": \"dedicated_28_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /29 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 74,\n                \"slug\": \"dedicated_29_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /30 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 75,\n                \"slug\": \"dedicated_30_lan\",\n                \"type\": 2\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"10.58\",\n                \"name\": \"Per /31 Dedicated LAN\",\n                \"price\": 0.0147,\n                \"resource_id\": 76,\n                \"slug\": \"dedicated_31_lan\",\n                \"type\": 2\n            }\n        ],\n        \"3\": [\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"23.83\",\n                \"name\": \"Per Windows Server license\",\n                \"price\": 0.0331,\n                \"resource_id\": 9,\n                \"slug\": \"windows_license\",\n                \"type\": 3\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"5.98\",\n                \"name\": \"Per RDP license\",\n                \"price\": 0.0083,\n                \"resource_id\": 10,\n                \"slug\": \"rdp_license\",\n                \"type\": 3\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"159.98\",\n                \"name\": \"Per SQL Standard 2 Core License\",\n                \"price\": 0.2222,\n                \"resource_id\": 11,\n                \"slug\": \"sql_standard_license\",\n                \"type\": 3\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"630.00\",\n                \"name\": \"Per SQL Ent. 2 Core\",\n                \"price\": 0.875,\n                \"resource_id\": 12,\n                \"slug\": \"sql_enterprise_license\",\n                \"type\": 3\n            },\n            {\n                \"booked\": 0,\n                \"included\": 0,\n                \"month_price\": \"19.94\",\n                \"name\": \"Per SQL Subscriber Access License\",\n                \"price\": 0.0277,\n                \"resource_id\": 13,\n                \"slug\": \"sql_subscriber_license\",\n                \"type\": 3\n            }\n        ],\n        \"4\": [\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"149.76\",\n                \"name\": \"WAN 500 Mbit upgrade\",\n                \"price\": 0.208,\n                \"resource_id\": 43,\n                \"slug\": \"wan_500_upgrade\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"249.84\",\n                \"name\": \"WAN 1000 Mbit upgrade\",\n                \"price\": 0.347,\n                \"resource_id\": 44,\n                \"slug\": \"wan_1000_upgrade\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"499.68\",\n                \"name\": \"WAN 10 Gbit Upgrade\",\n                \"price\": 0.694,\n                \"resource_id\": 45,\n                \"slug\": \"wan_10000_upgrade\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"349.92\",\n                \"name\": \"LAN 10 Gbit upgrade\",\n                \"price\": 0.486,\n                \"resource_id\": 46,\n                \"slug\": \"lan_10000_upgrade\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"84.82\",\n                \"name\": \"Per /29 Dedicated Stretched WAN\",\n                \"price\": 0.1178,\n                \"resource_id\": 77,\n                \"slug\": \"dedicated_stretched_29_wan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"148.39\",\n                \"name\": \"Per /28 Dedicated Stretched WAN\",\n                \"price\": 0.2061,\n                \"resource_id\": 78,\n                \"slug\": \"dedicated_stretched_28_wan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"296.78\",\n                \"name\": \"Per /27 Dedicated Stretched WAN\",\n                \"price\": 0.4122,\n                \"resource_id\": 79,\n                \"slug\": \"dedicated_stretched_27_wan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"604.80\",\n                \"name\": \"Per /26 Dedicated Stretched WAN\",\n                \"price\": 0.84,\n                \"resource_id\": 80,\n                \"slug\": \"dedicated_stretched_26_wan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"1181.88\",\n                \"name\": \"Per /25 Dedicated Stretched WAN\",\n                \"price\": 1.6415,\n                \"resource_id\": 81,\n                \"slug\": \"dedicated_stretched_25_wan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"2363.83\",\n                \"name\": \"Per /24 Dedicated Stretched WAN\",\n                \"price\": 3.2831,\n                \"resource_id\": 82,\n                \"slug\": \"dedicated_stretched_24_wan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /1 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 83,\n                \"slug\": \"dedicated_stretched_1_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /2 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 84,\n                \"slug\": \"dedicated_stretched_2_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /3 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 85,\n                \"slug\": \"dedicated_stretched_3_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /4 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 86,\n                \"slug\": \"dedicated_stretched_4_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /5 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 87,\n                \"slug\": \"dedicated_stretched_5_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /6 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 88,\n                \"slug\": \"dedicated_stretched_6_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /7 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 89,\n                \"slug\": \"dedicated_stretched_7_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /8 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 90,\n                \"slug\": \"dedicated_stretched_8_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /9 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 91,\n                \"slug\": \"dedicated_stretched_9_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /10 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 92,\n                \"slug\": \"dedicated_stretched_10_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /11 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 93,\n                \"slug\": \"dedicated_stretched_11_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /12 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 94,\n                \"slug\": \"dedicated_stretched_12_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /13 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 95,\n                \"slug\": \"dedicated_stretched_13_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /14 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 96,\n                \"slug\": \"dedicated_stretched_14_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /15 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 97,\n                \"slug\": \"dedicated_stretched_15_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /16 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 98,\n                \"slug\": \"dedicated_stretched_16_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /17 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 99,\n                \"slug\": \"dedicated_stretched_17_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /18 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 100,\n                \"slug\": \"dedicated_stretched_18_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /19 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 101,\n                \"slug\": \"dedicated_stretched_19_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /20 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 102,\n                \"slug\": \"dedicated_stretched_20_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /21 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 103,\n                \"slug\": \"dedicated_stretched_21_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /22 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 104,\n                \"slug\": \"dedicated_stretched_22_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /23 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 105,\n                \"slug\": \"dedicated_stretched_23_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /24 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 106,\n                \"slug\": \"dedicated_stretched_24_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /25 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 107,\n                \"slug\": \"dedicated_stretched_25_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /26 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 108,\n                \"slug\": \"dedicated_stretched_26_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /27 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 109,\n                \"slug\": \"dedicated_stretched_27_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /28 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 110,\n                \"slug\": \"dedicated_stretched_28_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /29 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 111,\n                \"slug\": \"dedicated_stretched_29_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /30 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 112,\n                \"slug\": \"dedicated_stretched_30_lan\",\n                \"type\": 4\n            },\n            {\n                \"booked\": null,\n                \"included\": null,\n                \"month_price\": \"31.80\",\n                \"name\": \"Per /31 Dedicated Stretched LAN\",\n                \"price\": 0.04417,\n                \"resource_id\": 113,\n                \"slug\": \"dedicated_stretched_31_lan\",\n                \"type\": 4\n            }\n        ],\n        \"5\": [\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /29 Dedicated Stretched WAN\",\n                \"price\": 106,\n                \"resource_id\": 1,\n                \"slug\": \"dedicated_stretched_29_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /28 Dedicated Stretched WAN\",\n                \"price\": 328.6,\n                \"resource_id\": 2,\n                \"slug\": \"dedicated_stretched_28_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /27 Dedicated Stretched WAN\",\n                \"price\": 662.5,\n                \"resource_id\": 3,\n                \"slug\": \"dedicated_stretched_27_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /26 Dedicated Stretched WAN\",\n                \"price\": 1325,\n                \"resource_id\": 4,\n                \"slug\": \"dedicated_stretched_26_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /25 Dedicated Stretched WAN\",\n                \"price\": 2650,\n                \"resource_id\": 5,\n                \"slug\": \"dedicated_stretched_25_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /24 Dedicated Stretched WAN\",\n                \"price\": 5300,\n                \"resource_id\": 6,\n                \"slug\": \"dedicated_stretched_24_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Replication\",\n                \"price\": 30,\n                \"resource_id\": 7,\n                \"slug\": \"replication\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /29 Dedicated WAN\",\n                \"price\": 0,\n                \"resource_id\": 8,\n                \"slug\": \"dedicated_29_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /28 Dedicated WAN\",\n                \"price\": 328.6,\n                \"resource_id\": 9,\n                \"slug\": \"dedicated_28_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /27 Dedicated WAN\",\n                \"price\": 662.5,\n                \"resource_id\": 10,\n                \"slug\": \"dedicated_27_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /26 Dedicated WAN\",\n                \"price\": 1325,\n                \"resource_id\": 11,\n                \"slug\": \"dedicated_26_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /25 Dedicated WAN\",\n                \"price\": 2650,\n                \"resource_id\": 12,\n                \"slug\": \"dedicated_25_wan\",\n                \"type\": \"setup\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Per /24 Dedicated WAN\",\n                \"price\": 5300,\n                \"resource_id\": 13,\n                \"slug\": \"dedicated_24_wan\",\n                \"type\": \"setup\"\n            }\n        ],\n        \"6\": [\n            {\n                \"category\": \"fee\",\n                \"name\": \"Base fee\",\n                \"price\": 0,\n                \"resource_id\": 14,\n                \"slug\": \"base\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Admin panel\",\n                \"price\": 0,\n                \"resource_id\": 15,\n                \"slug\": \"admin_panel\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Backup\",\n                \"price\": 0,\n                \"resource_id\": 16,\n                \"slug\": \"backup\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 100 GB\",\n                \"price\": 4,\n                \"resource_id\": 17,\n                \"slug\": \"object_storage_100\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 250 GB\",\n                \"price\": 10,\n                \"resource_id\": 20,\n                \"slug\": \"object_storage_250\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 500 GB\",\n                \"price\": 20,\n                \"resource_id\": 18,\n                \"slug\": \"object_storage_500\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 1 TB\",\n                \"price\": 40,\n                \"resource_id\": 19,\n                \"slug\": \"object_storage_1000\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 2 TB\",\n                \"price\": 80,\n                \"resource_id\": 21,\n                \"slug\": \"object_storage_2000\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 100 GB Replicated\",\n                \"price\": 8,\n                \"resource_id\": 22,\n                \"slug\": \"object_storage_100_replicated\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 250 GB Replicated\",\n                \"price\": 20,\n                \"resource_id\": 23,\n                \"slug\": \"object_storage_250_replicated\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 500 GB Replicated\",\n                \"price\": 40,\n                \"resource_id\": 24,\n                \"slug\": \"object_storage_500_replicated\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 1 TB Replicated\",\n                \"price\": 80,\n                \"resource_id\": 25,\n                \"slug\": \"object_storage_1000_replicated\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage 2 TB Replicated\",\n                \"price\": 160,\n                \"resource_id\": 26,\n                \"slug\": \"object_storage_2000_replicated\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage per TB\",\n                \"price\": 40,\n                \"resource_id\": 43,\n                \"slug\": \"object_storage_per_tb\",\n                \"type\": \"monthly\"\n            },\n            {\n                \"category\": \"fee\",\n                \"name\": \"Object Storage per TB Replicated\",\n                \"price\": 80,\n                \"resource_id\": 44,\n                \"slug\": \"object_storage_per_tb_replicated\",\n                \"type\": \"monthly\"\n            }\n        ]\n    },\n    \"type\": 1,\n    \"type_id\": 1,\n    \"type_name\": \"Post-Paid\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/billing/save","description":"<p>Use this endpoint to create a new billing plan.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>billing_frequency</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>billing_frequency_name</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>currency_code</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>minimum_spending</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>resource_calculation</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>resource_calculation_name</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>resources</code></td>\n<td><em>object</em></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>type_id</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>type_name</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","save"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"a7245473-567a-42d9-b816-d00ec7995f57"},{"name":"Billing plans table","id":"51d52b58-e61b-44b2-afa9-df3447eed9e8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/table","description":"<p>Use this endpoint to get your organization's billing plans.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","table"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"51d52b58-e61b-44b2-afa9-df3447eed9e8"},{"name":"List of billing plans","id":"b997f7ad-074e-47ac-bdd8-de68a242b6b4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/getbilling?tenant=<TENANT_ID>","description":"<p>Use this endpoint to get the list of billing plans available to your organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","getbilling"],"host":["https://vdc.xelon.ch"],"query":[{"key":"tenant","value":"<TENANT_ID>"}],"variable":[]}},"response":[{"id":"e83b59e9-8b6e-47ba-a644-2f0f7df99824","name":"List of billing plans","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/getbilling","description":"Use this endpoint to get the list of billing plans available to your organization."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"current\": 1,\n    \"plans\": [\n        {\n            \"label\": \"<LABEL>\",\n            \"type\": {\n                \"id\": 1,\n                \"name\": \"<NAME>\",\n                \"type\": \"<TYPE>\"\n            },\n            \"type_id\": 1,\n            \"value\": 1\n        }\n    ]\n}"}],"_postman_id":"b997f7ad-074e-47ac-bdd8-de68a242b6b4"},{"name":"Change organization billing plan","id":"04eb3025-d938-4faf-b1ac-2dd063699570","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"bp_id\": \"<BP_ID>\",\n    \"tenant\": \"<TENANT>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/billing/changetenantbilling","description":"<p>Use this endpoint to assign another billing plan to an organization.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>bp_id</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>tenant</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","changetenantbilling"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"04eb3025-d938-4faf-b1ac-2dd063699570"},{"name":"Billing plan info","id":"9967b4e5-a6d2-4c10-94ef-fa1011fba330","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/billing/<BILLING_PLAN_ID>","description":"<p>Use this endpoint to get detailed information about a specific billing plan.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","<BILLING_PLAN_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"4ad35c71-f339-4f6f-88cb-0da9d753e699","name":"Billing plan info","originalRequest":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/billing/<BILLING_PLAN_ID>","description":"Use this endpoint to get detailed information about a specific billing plan."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"billing_frequency\": 1,\n    \"billing_frequency_name\": \"<BILLING_FREQUENCY_NAME>\",\n    \"currency\": \"<CURRENCY>\",\n    \"currency_code\": \"<CURRENCY_CODE>\",\n    \"fees\": [\n        {\n            \"category\": \"<CATEGORY>\",\n            \"id\": 1,\n            \"name\": \"<NAME>\",\n            \"price\": 1,\n            \"resource_id\": 1,\n            \"slug\": \"<SLUG>\",\n            \"type\": \"<TYPE>\"\n        }\n    ],\n    \"id\": 1,\n    \"minimum_spending\": 1,\n    \"name\": \"<NAME>\",\n    \"resource_calculation\": 1,\n    \"resource_calculation_name\": \"<RESOURCE_CALCULATION_NAME>\",\n    \"resources\": [\n        {\n            \"category\": \"<CATEGORY>\",\n            \"id\": 1,\n            \"month_price\": \"<MONTH_PRICE>\",\n            \"name\": \"<NAME>\",\n            \"price\": \"<PRICE>\",\n            \"resource_id\": 1,\n            \"slug\": \"<SLUG>\",\n            \"type\": 1\n        }\n    ],\n    \"type\": 1,\n    \"type_id\": 1,\n    \"type_name\": \"<TYPE_NAME>\"\n}"}],"_postman_id":"9967b4e5-a6d2-4c10-94ef-fa1011fba330"},{"name":"Billing resources","id":"f973fca0-3535-4cba-9e6a-7d1360328d22","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/resources","description":"<p>Use this endpoint to get the list of resources that can be priced in a billing plan.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","resources"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"b2ff0515-12cf-4ad1-9d67-74372568d7d4","name":"Billing resources","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/billing/resources","description":"Use this endpoint to get the list of resources that can be priced in a billing plan."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"billing_frequency\": [\n        {\n            \"billing_type_id\": 1,\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"id\": 1,\n            \"name\": \"<NAME>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"currencies\": [\n        {\n            \"code\": \"<CODE>\",\n            \"created_at\": 1,\n            \"id\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"resource_calculation\": [\n        {\n            \"billing_type_id\": 1,\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"id\": 1,\n            \"name\": \"<NAME>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ],\n    \"resources\": [\n        {\n            \"id\": 1,\n            \"name\": \"<NAME>\"\n        }\n    ]\n}"}],"_postman_id":"f973fca0-3535-4cba-9e6a-7d1360328d22"},{"name":"Update billing plan resource","id":"925251aa-9107-4851-a7e5-e1e5e160d7b4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"id\": \"<ID>\",\n    \"resource_id\": \"<RESOURCE_ID>\",\n    \"name\": \"Per Windows Server license\",\n    \"slug\": \"windows_license\",\n    \"type\": 3,\n    \"price\": \"0.05\",\n    \"month_price\": \"36\",\n    \"included\": 0,\n    \"booked\": 0\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/billing/resource","description":"<p>Use this endpoint to update the price of a resource in a billing plan.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>resource_id</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>slug</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>price</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>month_price</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>included</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>booked</code></td>\n<td><em>number</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","resource"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"abc888be-c6a6-4e70-b896-d7b6edd9aa68","name":"Update billing plan resource","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"id\": \"<ID>\",\n    \"resource_id\": \"<RESOURCE_ID>\",\n    \"name\": \"Per Windows Server license\",\n    \"slug\": \"windows_license\",\n    \"type\": 3,\n    \"price\": \"0.05\",\n    \"month_price\": \"36\",\n    \"included\": 0,\n    \"booked\": 0\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/billing/resource","description":"Use this endpoint to update the price of a resource in a billing plan.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `id` | _string_ |\n| `resource_id` | _string_ |\n| `name` | _string_ |\n| `slug` | _string_ |\n| `type` | _number_ |\n| `price` | _string_ |\n| `month_price` | _string_ |\n| `included` | _number_ |\n| `booked` | _number_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"<MESSAGE>\"\n}"}],"_postman_id":"925251aa-9107-4851-a7e5-e1e5e160d7b4"},{"name":"Update billing plan","id":"9bba494c-3c33-45a4-b449-612ec148c93d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"id\": \"<ID>\",\n    \"name\": \"<NAME>\",\n    \"currency_id\": \"1\",\n    \"base_fee\": \"1\",\n    \"minimum_spending\": 0\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/billing/update","description":"<p>Use this endpoint to update an existing billing plan.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>currency_id</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>base_fee</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>minimum_spending</code></td>\n<td><em>number</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","billing","update"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"753f2c50-cf5c-4a52-9942-3abfbac1a013","name":"Update billing plan","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"id\": \"<ID>\",\n    \"name\": \"<NAME>\",\n    \"currency_id\": \"1\",\n    \"base_fee\": \"1\",\n    \"minimum_spending\": 0\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/billing/update","description":"Use this endpoint to update an existing billing plan.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `id` | _string_ |\n| `name` | _string_ |\n| `currency_id` | _string_ |\n| `base_fee` | _string_ |\n| `minimum_spending` | _number_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"admin_panel_fee\": 1,\n    \"base_fee\": null,\n    \"billing_frequency_id\": 1,\n    \"created_at\": \"2026-01-01T12:00:00+01:00\",\n    \"creator_id\": 1,\n    \"currency_id\": 1,\n    \"deleted_at\": \"2026-01-01T12:00:00+01:00\",\n    \"id\": 1,\n    \"minimum_spending\": 1,\n    \"name\": \"<NAME>\",\n    \"replication_base_fee\": 1,\n    \"resource_calculation_id\": 1,\n    \"type_id\": 1,\n    \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n}"}],"_postman_id":"9bba494c-3c33-45a4-b449-612ec148c93d"},{"name":"Monthly token usage","id":"c5ab87b7-8bc2-4308-a6ee-df181af264d1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/billing/tokens/monthly","description":"<p>Use this endpoint to get the organization's monthly token usage.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","billing","tokens","monthly"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"c5ab87b7-8bc2-4308-a6ee-df181af264d1"}],"id":"310e2a93-802e-408c-b307-4f96fe0406f2","description":"<p>Billing Plan allows you to see a per-service and a per-hour prices for each IT resource.</p>\n<blockquote>\n<p>All date entries should follow the <a href=\"https://www.iso.org/iso-8601-date-and-time-format.html\">ISO8601</a> format: <code>YYYY-MM-DD.</code> Example: <code>\"startDate\": \"2022-12-24\"</code></p>\n</blockquote>\n","_postman_id":"310e2a93-802e-408c-b307-4f96fe0406f2","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"DNS Zones","item":[{"name":"List of DNS zones","id":"ca91f7d6-75d2-4f9e-af9c-87e57e8d51ab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/dns?page=1&perPage=25&search=<SEARCH>&sort=<SORT_FIELD>&order=asc","description":"<p>Retrieves a list of available DNS zones within your organization.</p>\n<blockquote>\n<p>Please point your domains to the following nameservers:<br /><code>ns1.xdns.cloud</code><br /><code>ns2.xdns.cloud</code><br /><code>ns3.xdns.cloud   ns4.xdns.cloud</code></p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","dns"],"host":["https://vdc.xelon.ch"],"query":[{"key":"page","value":"1"},{"key":"perPage","value":"25"},{"disabled":true,"key":"search","value":""},{"disabled":true,"key":"sort","value":""},{"disabled":true,"key":"order","value":""},{"key":"search","value":"<SEARCH>"},{"key":"sort","value":"<SORT_FIELD>"},{"key":"order","value":"asc"}],"variable":[]}},"response":[{"id":"7f24c9df-2139-41e9-bdf1-056f57568408","name":"List of DNS zones","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/dns?page=1&perPage=25","host":["https://vdc.xelon.ch"],"path":["api","service","dns"],"query":[{"key":"page","value":"1"},{"key":"perPage","value":"25"},{"key":"search","value":"","disabled":true},{"key":"sort","value":"","disabled":true},{"key":"order","value":"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 18:13:52 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=dp%2BqAnoe%2Be75oxaMmExwBHp76MuT1yTMEgDQS%2FO6suJcTQtpHzYD3heLckbEdfJjZq3ZldKm68KWsQhnwHXyN5jD6JqDOW6jpvhSFV3MD0NhwncOI14I27KdsgE3SA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed7b38a2ad77801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": 1,\n            \"name\": \"example.com\",\n            \"owner\": \"Organization Name\",\n            \"created_at\": \"2020-09-11T15:17:59+02:00\"\n        },\n        {\n            \"id\": 2,\n            \"name\": \"example.net\",\n            \"owner\": \"Organization Name\",\n            \"created_at\": \"2020-09-08T17:53:46+02:00\"\n        }\n    ],\n    \"meta\": {\n        \"total\": 2,\n        \"lastPage\": 1,\n        \"perPage\": 25,\n        \"currentPage\": 1,\n        \"from\": 1,\n        \"to\": 2\n    }\n}"}],"_postman_id":"ca91f7d6-75d2-4f9e-af9c-87e57e8d51ab"},{"name":"Add DNS zone","id":"28723583-94d8-402d-b893-6d4af674292b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"domain\": \"dns1.cloud.xelon.com\",\n\t\"zone_type\": \"master\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/<TENANT_ID>","description":"<p>Adds a new DNS zone within a specific tenant. New DNS zone name can be specified in a <code>domain</code> body request parameter.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","dns","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"45639471-2333-46cd-afca-8c41eb6ee04a","name":"Add DNS zone","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"domain\": \"dns1.cloud.xelon.com\",\n\t\"zone_type\": \"master\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/<TENANT_ID>"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 18:15:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=8vLEiwKnruBWEoO6urR%2Fi9YmRvIU8x5yZQoHrpBVkuNadCqJLAKb3Z6GLNchlmMbZFa9CrzSuONzW7Y0Jsr%2BhSdiRCbf%2F%2BEk6p%2BxBEToXNjXJ9HxSc%2Fuh%2B6XdB3xDw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed7b72d1f1c7801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Domain zone dns1.cloud.xelon.com was created successfully.\",\n    \"dnsId\": 1\n}"}],"_postman_id":"28723583-94d8-402d-b893-6d4af674292b"},{"name":"List of DNS records","id":"faff9fa1-980a-48b8-8245-73fe8ac6c3f8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/records/<TENANT_ID>?domain=mywebsite.ch&per_page=100","description":"<p>Retrieves a list of DNS records for a specific domain. Each record has its own <code>id</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","dns","records","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Display name of your DNS zone.</p>\n","type":"text/plain"},"key":"domain","value":"mywebsite.ch"},{"key":"per_page","value":"100"}],"variable":[]}},"response":[{"id":"622c1ab6-92ef-4289-a9e1-ebb8f431d746","name":"List of DNS records","originalRequest":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":{"raw":"https://vdc.xelon.ch/api/service/dns/records/2sn54783n?domain=wwqiuhdwquid.vdns.net","host":["https://vdc.xelon.ch"],"path":["api","service","dns","records","2sn54783n"],"query":[{"key":"domain","value":"wwqiuhdwquid.vdns.net","description":"Display name of your DNS zone."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|9afed375-6417-4c20-ad8b-edccacffa233|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=9afed375-6417-4c20-ad8b-edccacffa233"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Thu, 17 Feb 2022 10:49:10 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"498"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"records\": {\n        \"250792965\": {\n            \"id\": \"123123123\",\n            \"type\": \"NS\",\n            \"host\": \"\",\n            \"record\": \"nameserver1.dns.cloud\",\n            \"failover\": \"0\",\n            \"ttl\": \"3600\",\n            \"status\": 1\n        }\n    },\n    \"pages\": 1,\n    \"soa\": {\n        \"serialNumber\": \"<SERIAL_NUMBER>\",\n        \"primaryNS\": \"nameserver1.dns.cloud\",\n        \"adminMail\": \"admin@mail.com\",\n        \"refresh\": \"7200\",\n        \"retry\": \"1800\",\n        \"expire\": \"1209600\",\n        \"defaultTTL\": \"3600\"\n    }\n}"}],"_postman_id":"faff9fa1-980a-48b8-8245-73fe8ac6c3f8"},{"name":"Add DNS record","id":"d86c0eed-a839-455e-8382-12bc03e50ddd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"domain\": \"domain.cloud.xelon.com\",\n\t\"host\": \"nameserver.dns.cloud\",\n\t\"record\": \"your-record-goes-here.com\",\n\t\"ttl\": 60,\n\t\"type\": \"CNAME\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/records/<TENANT_ID>","description":"<p>Adds a new record to a specific DNS zone. Response also indicates an <code>id</code> of the new record. A successful <code>200</code> response will display your new DNS record's <code>id</code>.</p>\n<p><code>ttl</code> — TTL (time to live) is a setting that tells the DNS resolver how long to cache a query before requesting a new one.</p>\n<p><code>type</code> — a type of DNS record.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>domain</code></td>\n<td>DNS zone domain name.</td>\n</tr>\n<tr>\n<td><code>host</code></td>\n<td>Nameserver for DNS zone. Can be either <code>ns1.xdns.cloud</code>, <code>ns2.xdns.cloud</code>, <code>ns3.xdns.cloud</code>, or <code>ns4.xdns.cloud</code>.</td>\n</tr>\n<tr>\n<td><code>record</code></td>\n<td>DNS record address.</td>\n</tr>\n</tbody>\n</table>\n</div><div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong><code>ttl</code></strong> <strong>(in seconds)</strong></th>\n<th><strong><code>type</code></strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>60</td>\n<td>A</td>\n</tr>\n<tr>\n<td>300</td>\n<td>AAAA</td>\n</tr>\n<tr>\n<td>900</td>\n<td>CNAME</td>\n</tr>\n<tr>\n<td>1800</td>\n<td>PTR</td>\n</tr>\n<tr>\n<td>3600</td>\n<td>MX</td>\n</tr>\n<tr>\n<td>21600</td>\n<td>TXT</td>\n</tr>\n<tr>\n<td>43200</td>\n<td>SRV</td>\n</tr>\n<tr>\n<td>86400</td>\n<td>NS</td>\n</tr>\n<tr>\n<td>172800</td>\n<td>WR</td>\n</tr>\n<tr>\n<td>259200</td>\n<td>ALIAS</td>\n</tr>\n<tr>\n<td>604800</td>\n<td>CAA</td>\n</tr>\n<tr>\n<td>1209600</td>\n<td>TLSA</td>\n</tr>\n<tr>\n<td></td>\n<td>RP</td>\n</tr>\n<tr>\n<td></td>\n<td>SSHFP</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>The <code>ttl</code> and <code>type</code> parameters aren't correlated in the table above. For example, you can have a 1800 <code>ttl</code> and CAA <code>type</code>.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","dns","records","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0d57e688-b391-4115-a00e-ebf2921a5d36","name":"Add DNS record","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","type":"text","value":"application/json"}],"body":{"mode":"raw","raw":"{\n\t\"domain\": \"dns1.cloud.xelon.com\",\n\t\"host\": \"ns5.xdns.cloud\",\n\t\"record\": \"your-record-goes-here.com\",\n\t\"ttl\": 60,\n\t\"type\": \"CNAME\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/records/<TENANT_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 10:50:15 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"x-ratelimit-limit","value":"1"},{"key":"x-ratelimit-remaining","value":"0"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=2z8ooGv14K972R%2FHfUj9ZOHBWtD%2BMdqWGVUaV36U2I0rInglOzKSyCRRhdMrxnuyGeqrG4HdlJHlbkD3Az1Cfm71lxTXJLyw0v4cmgPJPwyir92XamvOFUKeXNXeGPg%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"717096008bbf77b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"The record was added successfully.\",\n    \"id\": 123123123\n}"}],"_postman_id":"d86c0eed-a839-455e-8382-12bc03e50ddd"},{"name":"Delete DNS record","id":"164d0075-5ae6-4741-84fd-4b048ae2fd27","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/records/<RECORD_ID>/<TENANT_ID>?domain=dns.xelon.ch","description":"<p>Deletes a specific DNS record by its RECORD_ID and a <code>domain</code> query parameter.</p>\n<p>You can get <code>RECORD_ID</code> within the <code>GET</code> <strong>List of DNS records</strong> endpoint above.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","dns","records","<RECORD_ID>","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[{"description":{"content":"<p>Your DNS zone.</p>\n","type":"text/plain"},"key":"domain","value":"dns.xelon.ch"}],"variable":[]}},"response":[{"id":"6d87ec54-3091-457d-9451-2ec6e853d0ee","name":"Delete DNS record","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":{"raw":"https://vdc.xelon.ch/api/service/dns/records/<RECORD_ID>/<TENANT_ID>?domain=dns.xelon.ch","host":["https://vdc.xelon.ch"],"path":["api","service","dns","records","<RECORD_ID>","<TENANT_ID>"],"query":[{"key":"domain","value":"dns.xelon.ch","description":"Your DNS zone."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 09 Jun 2022 09:25:30 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=KtKzHfrhDeMZ3CeB4UWnNsFBjPbuyLMUCFzI2aOz0nF%2FX4kkTeecwZMlIo7jCIJIVlcT4JzKaaAGJoNtloxaDaMkui43mcdRg5Yp9WwKFCGUtWuMwxLBA4Y%2BKcUHz8Q%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7188d1fdbf332301-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"164d0075-5ae6-4741-84fd-4b048ae2fd27"},{"name":"Edit SOA record","id":"951db6e1-8183-4c06-a07a-5949b5896fff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"domain\": \"test-name.cloud.org\",\n\t\"expire\": 1209600,\n\t\"mail\": \"<EMAIL>\",\n\t\"ns\": \"ns1.xdns.cloud\",\n\t\"refresh\": 3600,\n\t\"retry\": 1800,\n\t\"ttl\": 21600\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/records/soa/<TENANT_ID>","description":"<p>Updates an SOA record for a specific tenant indicated in the endpoint URL.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Definition</strong></th>\n<th><strong>Limitations</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>domain</code></td>\n<td>Name of your domain.</td>\n<td>Up to 64 characters.</td>\n</tr>\n<tr>\n<td><code>expire</code></td>\n<td>Expire time - The time in seconds that a secondary server will keep trying to complete a zone transfer. If this time expires before a successful zone transfer, the secondary server will expire its zone file. The secondary will stop answering queries, as it considers its data too old to be reliable.</td>\n<td>Min: 60; Max: 2629746 (1 month).</td>\n</tr>\n<tr>\n<td><code>mail</code></td>\n<td>DNS admin mail, the one responsible for administering the domain's zone file.</td>\n<td></td>\n</tr>\n<tr>\n<td><code>ns</code></td>\n<td><strong>Primary name server</strong> - the host name for the primary DNS server for the zone.</td>\n<td></td>\n</tr>\n<tr>\n<td><code>refresh</code></td>\n<td><strong>Refresh Rate</strong> - The time in seconds that a secondary DNS server waits before querying the primary DNS server's SOA record to check for changes.</td>\n<td>Min: 60; Max: 2629746 (1 month).</td>\n</tr>\n<tr>\n<td><code>retry</code></td>\n<td><strong>Retry Rate</strong> - The time in seconds that a secondary server waits before retrying a failed zone transfer.</td>\n<td>Min: 60; Max: 2629746 (1 month).</td>\n</tr>\n<tr>\n<td><code>ttl</code></td>\n<td><strong>TTL (time-to-live)</strong> - The minimum time-to-live value applies to all resource records in the zone file. This value is supplied in query responses to inform other servers how long they should keep the data in the cache.</td>\n<td>Min: 60; Max: 1209600 (2 weeks).</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Usually, the <code>retry</code> rate is less than the <code>refresh</code> rate.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","dns","records","soa","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"109e8600-ad87-442a-8040-ba2b6bc5b69e","name":"Edit SOA record","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"domain\": \"test-name.cloud.org\",\n\t\"expire\": 1209600,\n\t\"mail\": \"<EMAIL>\",\n\t\"ns\": \"ns1.xdns.cloud\",\n\t\"refresh\": 3600,\n\t\"retry\": 1800,\n\t\"ttl\": 21600\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/records/soa/2sn54783n"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Server","value":"nginx/1.14.0 (Ubuntu)"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-StackifyID","value":"V1|0eff0e53-d9c2-490d-9c2c-b2bfd09448ad|C85225|CD1|"},{"key":"Set-Cookie","value":".Stackify.Rum=0eff0e53-d9c2-490d-9c2c-b2bfd09448ad"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"Date","value":"Mon, 21 Feb 2022 10:21:34 GMT"},{"key":"X-RateLimit-Limit","value":"500"},{"key":"X-RateLimit-Remaining","value":"499"},{"key":"Access-Control-Allow-Origin","value":"*"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"The SOA record was modified successfully.\"\n}"}],"_postman_id":"951db6e1-8183-4c06-a07a-5949b5896fff"},{"name":"Delete a DNS zone","id":"e6b41d08-4a94-4f9c-9a48-7164b24bc4b0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/dns/<TENANT_ID>","description":"<p>Deletes a DNS zone. Requires a DNS zone domain name in the query parameter.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","dns","<TENANT_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"923e3501-e243-452c-8a2b-f8bc1b3c837a","name":"Delete a DNS zone","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\";\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://vdc.xelon.ch/api/service/dns/<TENANT_ID>?dnsId=<DNS_ID>","host":["https://vdc.xelon.ch"],"path":["api","service","dns","<TENANT_ID>"],"query":[{"key":"dnsId","value":"<DNS_ID>","description":"DNS Zone's domain ID."}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:00:11 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=xtCp5JvB%2BCVa%2BCgzldlT3%2BnOlolg9VGp7swJFloWLiSXrHh3YEbVBtanV0POlWmEwXMBUy88eaDTju7rYrfsLYYEAwa98SVZJB3yuGETFJhg0q1pRTxGq7AN9iKNVEo%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170a490eeed77b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"DNS zone has been deleted\"\n}"}],"_postman_id":"e6b41d08-4a94-4f9c-9a48-7164b24bc4b0"}],"id":"0cda78ec-c402-4b0a-9ece-224002d0bbf3","_postman_id":"0cda78ec-c402-4b0a-9ece-224002d0bbf3","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Load Balancer","item":[{"name":"Forwarding rules","item":[{"name":"Add forwarding rule","id":"60c74663-fe82-4907-bc6b-ec0cf6928d1a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"id\": \"<ID>\",\n\t\"ip\": [\n\t\t\"1.2.3.4:1234\"\n\t],\n\t\"maintenance_mode\": true,\n\t\"newRule\": true,\n\t\"ports\": [],\n\t\"ssl_autogenerate\": true,\n\t\"ssl_backend\": true,\n\t\"ssl_certificate\": null,\n\t\"type\": \"layer7\",\n\t\"url\": \"<URL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>/forwardingRule","description":"<p>Creates new forwarding rule according to the selected configuration.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","loadBalancer","<LOCAL_ID>","forwardingRule"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"164a24fc-ca60-4ec2-b5d3-290714f6f013","name":"Add forwarding rule","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"id\": \"<ID>\",\n\t\"ip\": [\n\t\t\"1.2.3.4:1234\"\n\t],\n\t\"maintenance_mode\": true,\n\t\"newRule\": true,\n\t\"ports\": [],\n\t\"ssl_autogenerate\": true,\n\t\"ssl_backend\": true,\n\t\"ssl_certificate\": null,\n\t\"type\": \"layer7\",\n\t\"url\": \"<URL\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>/forwardingRule"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:02:25 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=04Ycs7IKL4Er4FKDbN8LChYWQEU1mypJo0GMme8RlfE06zO9uRFvFDE3RkwPp%2FjHkYF8wSawqMr6jKdMzqISu7BNQquNhfxC%2FRcnHGe8fNsmRpOat1XAocNDaLUztOQ%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170a7d649d077b6-KBP"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"ip\": [\n        \"1.2.3.4:1234\"\n    ],\n    \"maintenance_mode\": true,\n    \"ports\": [],\n    \"ssl_autogenerate\": true,\n    \"ssl_backend\": true,\n    \"ssl_certificate\": null,\n    \"type\": \"layer7\",\n    \"url\": \"<URL>\",\n    \"load_balancer_id\": 123,\n    \"created_at\": \"2022-06-06T11:02:25.000000Z\",\n    \"id\": 12345,\n    \"message\": \"<MESSAGE>\",\n    \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n}"}],"_postman_id":"60c74663-fe82-4907-bc6b-ec0cf6928d1a"},{"name":"Update forwarding rule","id":"ed5d934a-5d1b-48f0-8678-a55a8fdd4e68","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"created_at\": \"2022-02-16T14:59:53.000000Z\",\n    \"id\": 1234,\n    \"ip\": [\n        \"1.2.3.4:1234\",\n        \"4.3.2.1:4321\"\n    ],\n    \"load_balancer_id\": 123,\n    \"maintenance_mode\": false,\n    \"ports\": null,\n    \"ssl_autogenerate\": false,\n    \"ssl_backend\": true,\n    \"ssl_certificate\": null,\n    \"type\": \"layer7\",\n    \"url\": \"<URL>\",\n    \"index_file\": \"<INDEX_FILE>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>/forwardingRule/<FORWARDING_RULE_ID>","description":"<p>Updates an existing forwarding rule by its <code>id</code> in the endpoint URL.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","loadBalancer","<LOCAL_ID>","forwardingRule","<FORWARDING_RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"5c71ca10-dcc8-4ca3-bbeb-9b35724af707","name":"Update forwarding rule","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"created_at\": \"2022-02-16T14:59:53.000000Z\",\n\t\"id\": 1234,\n\t\"ip\": [\n\t\t\"1.2.3.4:1234\",\n\t\t\"4.3.2.1:4321\"\n\t],\n\t\"load_balancer_id\": 123,\n\t\"maintenance_mode\": false,\n\t\"ports\": null,\n\t\"ssl_autogenerate\": false,\n\t\"ssl_backend\": true,\n\t\"ssl_certificate\": null,\n\t\"type\": \"layer7\",\n\t\"url\": \"<URL>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>/forwardingRule/<FORWARDING_RULE_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:03:14 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=XIYTvLbABtbfv9t2rT%2Bo1xtuH1J8szyXAtKHFfEgW85mi3%2BIF173TmD3Tcd%2F3GQMX3FuWSs0qfvUFAxKY3MGDMRLK%2Ff6PMBZ8ga7RydM%2F3lY4mLyzSgUii1eXYQG1Oo%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170a9079c7877b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Changes were submitted and rules will be updated soon, but not immediately.\",\n    \"forwardingRules\": [\n        {\n            \"id\": 12345,\n            \"load_balancer_id\": 123,\n            \"ports\": null,\n            \"ip\": [\n                \"1.2.3.4:56\"\n            ],\n            \"ssl_certificate\": null,\n            \"url\": \"https://example.com/api:8080\",\n            \"maintenance_mode\": false,\n            \"index_file_path\": null,\n            \"type\": \"layer7\",\n            \"ssl_autogenerate\": false,\n            \"ssl_backend\": false,\n            \"created_at\": \"2022-03-17T19:43:41.000000Z\",\n            \"identifier\": \"<IDENTIFIER>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ]\n}"}],"_postman_id":"ed5d934a-5d1b-48f0-8678-a55a8fdd4e68"},{"name":"Delete forwarding rule","id":"27a64acb-b4c9-473f-8a1d-0e452e9e18ec","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>/forwardingRule/<FORWARDING_RULE_ID>","description":"<p>Deletes a specific forwarding rule by its <code>id</code> in the URL.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","loadBalancer","<LOCAL_ID>","forwardingRule","<FORWARDING_RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"84fc1a80-b6f7-4063-ac28-1c19ed563819","name":"Delete forwarding rule","originalRequest":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>/forwardingRule/<FORWARDING_RULE_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:03:26 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=Suhu%2BJCrh2otUTjTZfRYNJ00n4e%2BwdH%2BXERBTWVRKtazFYEMRyziHXjFrCnfRCJOpCzJXktrcNGPQ5WZ0mMNZz3LifxQTE6FE5RJA%2BsXfsWZ01tPOAfefnhaq08i%2BSo%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170a9515c0777b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Changes were submitted and rules will be updated soon, but not immediately.\",\n    \"forwardingRules\": [\n        {\n            \"id\": 12345,\n            \"load_balancer_id\": 123,\n            \"ports\": null,\n            \"ip\": [\n                \"1.2.3.4:56\"\n            ],\n            \"ssl_certificate\": null,\n            \"url\": \"https://example.com/api:8080\",\n            \"maintenance_mode\": false,\n            \"index_file_path\": null,\n            \"type\": \"layer7\",\n            \"ssl_autogenerate\": false,\n            \"ssl_backend\": false,\n            \"created_at\": \"2022-03-17T19:43:41.000000Z\",\n            \"identifier\": \"<IDENTIFIER>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        }\n    ]\n}"}],"_postman_id":"27a64acb-b4c9-473f-8a1d-0e452e9e18ec"}],"id":"d6aa42ec-5f63-46e4-9ed7-f1bc7b20dd14","description":"<p>Each Forwarding Rule has its own unique <code>id</code> which allows you to manage them. The list of all forwarding rules for the Load Balancer device is contained in a <code>forwarding_rules</code> array of the <code>GET</code> <strong>List of Load Balancers</strong> or <code>GET</code> <strong>Load Balancer info</strong> endpoints. There you can also <strong>get forwarding rule id</strong>.</p>\n","event":[{"listen":"prerequest","script":{"id":"db806b1c-81c7-4030-a20e-2d815f8b3ef7","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8ab93406-e398-4361-b5a2-0a994c553cdf","type":"text/javascript","exec":[""]}}],"_postman_id":"d6aa42ec-5f63-46e4-9ed7-f1bc7b20dd14","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"List of Load Balancers","id":"7b56a799-3ca9-4ca8-9802-08e7f9d85d52","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/loadBalancer?cloudId=<CLOUD_ID>","description":"<p>This endpoint retrieves a list of Load Balancers and related Forwarding Rules.</p>\n<blockquote>\n<p>If <code>health</code> is not <code>green</code>, consider the status as unhealthy.</p>\n</blockquote>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>local_id</code></td>\n<td>A local ID of your Load Balancer by which it also can be managed.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td><code>1</code> for Kubernetes and <code>2</code> for server.</td>\n</tr>\n<tr>\n<td><code>vm_id</code></td>\n<td>A Load Balancer's device ID.</td>\n</tr>\n<tr>\n<td><code>network_id</code></td>\n<td>A Load Balancer's networ ID.</td>\n</tr>\n<tr>\n<td><code>hv_system_id</code></td>\n<td>Related Hypervisor's ID.</td>\n</tr>\n<tr>\n<td><code>ip</code></td>\n<td>WAN IP of a related device.</td>\n</tr>\n<tr>\n<td><code>hv_type</code></td>\n<td>Public (<code>public</code>) or private (<code>private</code>) cloud.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","loadBalancer"],"host":["https://vdc.xelon.ch"],"query":[{"key":"cloudId","value":"<CLOUD_ID>"}],"variable":[]}},"response":[{"id":"7c8d8ad5-038a-460d-b85f-7ac4fc999e5b","name":"List of Load Balancers","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/loadBalancer"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 18:26:02 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=zpHzvATxRVvVcopk3QwLxzbNl1milB8sXdDETMh2jzys9FPP79eZxvNYPlrD6s%2B%2FSk4qjG1lIhWb6%2Fy5RD4r7YKg43ljk%2FIl%2FzvS2KVGOY5zKA9J8ptA1JbptlxYDA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed7c64358c77801-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 123,\n        \"local_id\": \"<LOCAL_ID>\",\n        \"name\": \"test\",\n        \"type\": 2,\n        \"tenant_id\": 321,\n        \"vm_id\": 1234,\n        \"network_id\": 123,\n        \"algorithm\": 1,\n        \"forwarding_rules\": [\n            {\n                \"id\": 123,\n                \"load_balancer_id\": 123,\n                \"ports\": [\n                    456,\n                    789\n                ],\n                \"ip\": [\n                    \"1.2.3.4\"\n                ],\n                \"ssl_certificate\": null,\n                \"url\": null,\n                \"maintenance_mode\": false,\n                \"index_file_path\": null,\n                \"type\": \"layer4\",\n                \"ssl_autogenerate\": false,\n                \"ssl_backend\": false,\n                \"created_at\": \"2020-10-26T15:50:08.000000Z\",\n                \"identifier\": \"<IDENTIFIER>\",\n                \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n            }\n        ],\n        \"ssl_redirect\": 0,\n        \"proxy_protocol\": 0,\n        \"health_check\": {\n            \"path\": \"/\",\n            \"port\": 9595,\n            \"timeout\": 50,\n            \"interval\": 10,\n            \"bad_threshold\": 3,\n            \"good_threshold\": 5\n        },\n        \"load_balancing\": \"layer4\",\n        \"created_at\": \"2020-10-26T16:50:08+01:00\",\n        \"hv_system_id\": 1,\n        \"ip\": null,\n        \"hv_type\": \"public\",\n        \"tenant\": {\n            \"tenantname\": \"Organization Name\",\n            \"parent_identifier\": null\n        },\n        \"device\": null,\n        \"breadcrumbs\": \"<BREADCRUMBS>\",\n        \"deleted_at\": null,\n        \"health\": \"<HEALTH>\",\n        \"hv_system\": {\n            \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"type\": 1\n        },\n        \"internalIp\": \"<INTERNAL_IP>\",\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    }\n]"}],"_postman_id":"7b56a799-3ca9-4ca8-9802-08e7f9d85d52"},{"name":"Create Load Balancer","id":"48d9944c-65c5-4157-9f43-b3c262c90492","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"cloudId\": 1,\n    \"forwarding_rules\": [\n        {\n            \"ip\": [\n                \"1.2.3.4:56\"\n            ],\n            \"maintenance_mode\": false,\n            \"ssl_autogenerate\": false,\n            \"ssl_backend\": false,\n            \"ssl_certificate\": null,\n            \"type\": \"layer7\",\n            \"url\": \"https://example.com/api:8080\"\n        }\n    ],\n    \"internal_ip_id\": 1234,\n    \"internal_network_id\": 123,\n    \"load_balancing\": \"layer7\",\n    \"name\": \"load-balancer-name\",\n    \"server_id\": [],\n    \"type\": 2,\n    \"ip\": \"<IP>\",\n    \"external_network_id\": \"<EXTERNAL_NETWORK_ID>\",\n    \"external_ip_id\": \"<EXTERNAL_IP_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/loadBalancer","description":"<p>Creates new load balancer with a specific configuration within the request body.</p>\n<blockquote>\n<p>If you want the LB to be of Layer 7, make sure to add <code>\"load_balancing\": \"layer7\"</code> to the body request.</p>\n</blockquote>\n<h3 id=\"request-parameters\">Request parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>name</code></td>\n<td>Only lowercase letters, numbers and hyphen-minus ( - ) allowed, without spaces.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td><code>1</code> for Kubernetes and <code>2</code> for Server</td>\n</tr>\n<tr>\n<td><code>ip</code></td>\n<td>(optional) IP address to assign; must be a valid, non-reserved IP address.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","loadBalancer"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"4e09500a-7f51-46ce-9912-92a792eebf97","name":"Create Load Balancer","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 1,\n\t\"forwarding_rules\": [\n\t\t{\n\t\t\t\"ip\": [\n\t\t\t\t\"1.2.3.4:56\"\n\t\t\t],\n\t\t\t\"maintenance_mode\": false,\n\t\t\t\"ssl_autogenerate\": false,\n\t\t\t\"ssl_backend\": false,\n\t\t\t\"ssl_certificate\": null,\n\t\t\t\"type\": \"layer7\",\n\t\t\t\"url\": \"https://example.com/api:8080\"\n\t\t}\n\t],\n\t\"internal_ip_id\": 1234,\n\t\"internal_network_id\": 123,\n\t\"load_balancing\": \"layer7\",\n\t\"name\": \"load-balancer-name\",\n\t\"server_id\": [],\n\t\"type\": 2\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/loadBalancer"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 19:47:54 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=yN28nZvh%2Bci4vG3ZPNtYnOphVcVVIWqXZ3UacUZgsN%2B%2B8FigJHSr3iM5Xz48cT2CS8pabM2eR4qs3uxtM5F6ufrGL7nxTL4kxfKxRidavaHVLaXw%2BZqpJEeKaXu6Cw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed83e322e84d40b-BUD"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Load balancer <NAME> is being created\",\n    \"loadBalancer\": {\n        \"health_check\": {\n            \"port\": 8080,\n            \"path\": \"/\",\n            \"interval\": 20,\n            \"timeout\": 20,\n            \"bad_threshold\": 3,\n            \"good_threshold\": 5\n        },\n        \"local_id\": \"<ID>\",\n        \"name\": \"<NAME>\",\n        \"type\": 2,\n        \"load_balancing\": \"layer7\",\n        \"network_id\": 123,\n        \"tenant_id\": 321,\n        \"vm_id\": 1234,\n        \"hv_system_id\": 1,\n        \"created_at\": \"2022-03-17T20:47:54+01:00\",\n        \"id\": 123,\n        \"hv_type\": \"public\",\n        \"forwarding_rules_layer7\": [\n            {\n                \"id\": 12345,\n                \"load_balancer_id\": 123,\n                \"ports\": null,\n                \"ip\": [\n                    \"1.2.3.4:56\"\n                ],\n                \"ssl_certificate\": null,\n                \"url\": \"https://example.com/api:8080\",\n                \"maintenance_mode\": false,\n                \"index_file_path\": null,\n                \"type\": \"layer7\",\n                \"ssl_autogenerate\": false,\n                \"ssl_backend\": false,\n                \"created_at\": \"2022-03-17T19:47:54.000000Z\"\n            }\n        ],\n        \"forwarding_rules_layer4\": [\n            {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"id\": 1,\n                \"index_file_path\": null,\n                \"ip\": [],\n                \"load_balancer_id\": 1,\n                \"maintenance_mode\": false,\n                \"ports\": [],\n                \"ssl_autogenerate\": false,\n                \"ssl_backend\": false,\n                \"ssl_certificate\": null,\n                \"type\": \"<TYPE>\",\n                \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n                \"url\": null\n            }\n        ],\n        \"tenant\": {\n            \"account_manager\": 1,\n            \"active\": false,\n            \"address\": \"<ADDRESS>\",\n            \"address2\": \"<ADDRESS2>\",\n            \"allow_bank_transfer\": false,\n            \"allow_trial_creation\": false,\n            \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n            \"billingplan\": 1,\n            \"city\": \"<CITY>\",\n            \"country\": \"<COUNTRY>\",\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"credits_code_id\": null,\n            \"currency_id\": null,\n            \"customer_id\": 1,\n            \"customer_support_email\": \"<EMAIL>\",\n            \"customer_type\": \"<CUSTOMER_TYPE>\",\n            \"deactivation_date\": null,\n            \"deleted_at\": null,\n            \"demo\": false,\n            \"demo_end\": \"<DEMO_END>\",\n            \"demo_start\": null,\n            \"discount\": null,\n            \"financeemail\": [],\n            \"fixed_recurring\": 1,\n            \"fraud_risk_score\": 1,\n            \"hs_object_id\": null,\n            \"invoice_type\": \"<INVOICE_TYPE>\",\n            \"minimum_recurring\": 1,\n            \"otp_type\": null,\n            \"paid\": 1,\n            \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n            \"phone\": \"<PHONE>\",\n            \"postcode\": \"<POSTCODE>\",\n            \"report_frequency\": \"<REPORT_FREQUENCY>\",\n            \"requested\": 1,\n            \"resource_pool\": \"<RESOURCE_POOL>\",\n            \"status\": 1,\n            \"supportemail\": \"<EMAIL>\",\n            \"tax_id\": 1,\n            \"taxed\": 1,\n            \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n            \"tenantname\": \"<TENANTNAME>\",\n            \"trial\": false,\n            \"trial_end\": \"<TRIAL_END>\",\n            \"trial_start\": \"<TRIAL_START>\",\n            \"type\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"upgrade_modal_active\": 1,\n            \"withhold_invoices\": 1\n        },\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    }\n}"}],"_postman_id":"48d9944c-65c5-4157-9f43-b3c262c90492"},{"name":"Load  Balancer info","id":"63f758f7-771d-4568-9303-dd330da8e01e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>","description":"<p>Retrieves a set of data regarding the specific Load Balancer, which <code>id</code> should be included in the URL.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","loadBalancer","<LOCAL_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e28d3aa2-3e71-4dd3-a024-b400777795b9","name":"Load  Balancer info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:01:10 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=QEwKQmZAnRKg0rggPvPrwkme9pUAT%2FVagy%2BWdyNs%2FBxG3q3QlsCVOkH2wCvrBWgTOjTKboO9wf%2BISc2AtC2Q0PETwVj3hRxHAD4crWxgmRtlc68psA7LK2fWm69cgNE%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170a5fddfc177b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 123,\n    \"local_id\": \"<LOCAL_ID>\",\n    \"name\": \"name\",\n    \"type\": 2,\n    \"tenant_id\": 123,\n    \"vm_id\": 1234,\n    \"network_id\": 123,\n    \"algorithm\": 1,\n    \"forwarding_rules\": [\n        {\n            \"id\": 12345,\n            \"load_balancer_id\": 123,\n            \"ports\": null,\n            \"ip\": [\n                \"1.2.3.4:56\"\n            ],\n            \"ssl_certificate\": null,\n            \"url\": \"https://example.com/api:8080\",\n            \"maintenance_mode\": false,\n            \"index_file_path\": null,\n            \"type\": \"layer7\",\n            \"ssl_autogenerate\": false,\n            \"ssl_backend\": false,\n            \"created_at\": \"2022-03-17T19:43:41.000000Z\",\n            \"identifier\": \"<IDENTIFIER>\",\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        },\n        {\n            \"id\": 12345,\n            \"load_balancer_id\": 123,\n            \"ports\": null,\n            \"ip\": [\n                \"1.2.3.4:56\"\n            ],\n            \"ssl_certificate\": null,\n            \"url\": \"https://example.com/api:8080\",\n            \"maintenance_mode\": true,\n            \"index_file_path\": null,\n            \"type\": \"layer7\",\n            \"ssl_autogenerate\": true,\n            \"ssl_backend\": true,\n            \"created_at\": \"2022-05-26T12:30:10.000000Z\"\n        }\n    ],\n    \"ssl_redirect\": 0,\n    \"proxy_protocol\": 0,\n    \"health_check\": {\n        \"path\": \"/\",\n        \"port\": 4308,\n        \"timeout\": 20,\n        \"interval\": 20,\n        \"bad_threshold\": 3,\n        \"good_threshold\": 5\n    },\n    \"load_balancing\": \"layer7\",\n    \"created_at\": \"2022-03-17T20:43:41+01:00\",\n    \"hv_system_id\": 1,\n    \"ip\": \"123.321.123.321\",\n    \"internalIp\": \"1.2.3.4\",\n    \"health\": \"green\",\n    \"hv_type\": \"public\",\n    \"assigned_servers\": [\n        {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"deleted_at\": null,\n            \"failure_reason\": null,\n            \"health\": \"<HEALTH>\",\n            \"hv_system_id\": 1,\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"ip\": \"<IP>\",\n            \"is_restoring\": null,\n            \"iso_mounted\": null,\n            \"localvmid\": \"<LOCALVMID>\",\n            \"monitoring\": 1,\n            \"notes\": \"<NOTES>\",\n            \"pivot\": {\n                \"load_balancer_id\": 1,\n                \"server_id\": 1\n            },\n            \"service_cluster_type\": null,\n            \"service_id\": null,\n            \"serviceuser_lastchecked\": null,\n            \"serviceuser_status\": 1,\n            \"state\": 1,\n            \"template_id\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"user_id\": 1,\n            \"vdc_service_type\": 1,\n            \"vmdisplayname\": \"<VMDISPLAYNAME>\",\n            \"vmhostname\": \"<VMHOSTNAME>\"\n        }\n    ],\n    \"creator\": \"<CREATOR>\",\n    \"deleted_at\": null,\n    \"device\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"deleted_at\": null,\n        \"failure_reason\": null,\n        \"hv_system\": {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"display_name\": \"<DISPLAY_NAME>\",\n            \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"identifier\": \"<IDENTIFIER>\",\n            \"main_cloud\": 1,\n            \"type\": 1,\n            \"version\": 1\n        },\n        \"hv_system_id\": 1,\n        \"hv_type\": \"<HV_TYPE>\",\n        \"is_restoring\": null,\n        \"iso_mounted\": null,\n        \"localvmid\": \"<LOCALVMID>\",\n        \"monitoring\": 1,\n        \"notes\": null,\n        \"service_cluster_type\": null,\n        \"service_id\": 1,\n        \"serviceuser_lastchecked\": null,\n        \"serviceuser_status\": 1,\n        \"state\": 1,\n        \"template_id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"user_id\": 1,\n        \"vdc_service_type\": 1,\n        \"vmdisplayname\": \"<VMDISPLAYNAME>\",\n        \"vmhostname\": \"<VMHOSTNAME>\"\n    },\n    \"owner\": \"<OWNER>\",\n    \"tenant\": {\n        \"account_manager\": 1,\n        \"active\": false,\n        \"address\": \"<ADDRESS>\",\n        \"address2\": \"<ADDRESS2>\",\n        \"allow_bank_transfer\": false,\n        \"allow_trial_creation\": false,\n        \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n        \"billingplan\": 1,\n        \"city\": \"<CITY>\",\n        \"country\": \"<COUNTRY>\",\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"credits_code_id\": null,\n        \"currency_id\": null,\n        \"customer_id\": 1,\n        \"customer_support_email\": \"<EMAIL>\",\n        \"customer_type\": \"<CUSTOMER_TYPE>\",\n        \"deactivation_date\": null,\n        \"deleted_at\": null,\n        \"demo\": false,\n        \"demo_end\": \"<DEMO_END>\",\n        \"demo_start\": null,\n        \"discount\": null,\n        \"financeemail\": [],\n        \"fixed_recurring\": 1,\n        \"fraud_risk_score\": 1,\n        \"hs_object_id\": null,\n        \"invoice_type\": \"<INVOICE_TYPE>\",\n        \"minimum_recurring\": 1,\n        \"otp_type\": null,\n        \"paid\": 1,\n        \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n        \"phone\": \"<PHONE>\",\n        \"postcode\": \"<POSTCODE>\",\n        \"report_frequency\": \"<REPORT_FREQUENCY>\",\n        \"requested\": 1,\n        \"resource_pool\": \"<RESOURCE_POOL>\",\n        \"status\": 1,\n        \"supportemail\": \"<EMAIL>\",\n        \"tax_id\": 1,\n        \"taxed\": 1,\n        \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n        \"tenantname\": \"<TENANTNAME>\",\n        \"trial\": false,\n        \"trial_end\": \"<TRIAL_END>\",\n        \"trial_start\": \"<TRIAL_START>\",\n        \"type\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"upgrade_modal_active\": 1,\n        \"withhold_invoices\": 1\n    },\n    \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n}"}],"_postman_id":"63f758f7-771d-4568-9303-dd330da8e01e"},{"name":"Attach devices to load balancer","id":"b8a15a4b-cbbf-42bd-8c46-7336e413bc6d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"attached_servers\": [\n\t\t1564\n\t]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>/attach","description":"<p>Assigns a new Connected Device to the Load Balancer. The request body array requires a server's/device's <code>id</code> value for the <code>attached_servers</code> parameters.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","loadBalancer","<LOCAL_ID>","attach"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"85eb0780-509f-4493-a280-56325bb034a5","name":"Attach devices to load balancer","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"attached_servers\": [\n\t\t1564\n\t]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>/attach"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:01:43 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=mS%2FlLP%2FYTYdYVVBdS0T3FKJg4HCAydHTPJWhaavwqPDUX4lya08TpbCw0RDkeBIp7nSyQeD46zngJMmNH5o2WTAxx31xaFzJako2O6jlOj31q%2Bq7%2BTGXw%2BkQTlc1t1w%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170a6d168b677b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Attached devices successfully updated.\"\n}"}],"_postman_id":"b8a15a4b-cbbf-42bd-8c46-7336e413bc6d"},{"name":"Rename load balancer","id":"b736e4fc-8e41-4744-bddb-211de8587b39","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"name\": \"name\",\n\t\"value\": \"documentation\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>","description":"<p>Updates a name of a specific Load Balancer.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","loadBalancer","<LOCAL_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"3c0dfeb3-8481-4990-af80-4aa6f69d7d18","name":"Rename load balancer","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"name\": \"name\",\n\t\"value\": \"documentation\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:02:03 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=3%2B4ekIIdbVNbBMqz12wDcYsFu0n2u0vj3uLrZZWsKr%2BI13%2B53l3%2BIs0FqFFWkEQ6af8Pnrt1QdgWDBinfUN%2FIzYwNSKPhLaV5qDcq%2F5vlDjSTBwPQCn7TO38HX%2BvpG4%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170a74a5c4777b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Load Balancer has been updated.\"\n}"}],"_postman_id":"b736e4fc-8e41-4744-bddb-211de8587b39"},{"name":"Delete Load Balancer","id":"fd56c0f8-ee6d-48be-802f-089ff54c0493","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>","description":"<p>This endpoint deletes a specific Load Balancer.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","loadBalancer","<LOCAL_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"c3536f8f-613d-404e-a9b0-6aa6735b7638","name":"Delete Load Balancer","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/loadBalancer/<LOCAL_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:03:53 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=1u%2BXQZDabhbaljqY%2F7QXriO0QRStzRkDDQySF4OQ9HhaEKvFL49VMZtu%2Fa2fpBrj8%2BfAcgTlCIU%2F9s1XUMXO6rnXFL3y%2FLUAZEejpgofFjq0gAoZb7aR8L1AZevOcuM%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170a9f8dd2177b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Load balancer has been deleted.\"\n}"}],"_postman_id":"fd56c0f8-ee6d-48be-802f-089ff54c0493"}],"id":"34eee527-797a-4a9a-bb30-440917d1591f","description":"<p>You can integrate Load Balancer services into your environment and set up 'clustered' server environments or<br />containers.</p>\n<p>Each Load Balancer and Forwarding Rule has their own unique <code>local_id</code> and <code>id</code> correspondingly, by which they can be managed.</p>\n<ul>\n<li>Load Balancer's <code>local_id</code> example: <code>63871dz4308x2e85</code></li>\n<li>Forwarding Rule's <code>id</code> example: <code>a156164a-3d6e-48aa-a5bb-532fa71e674zf</code></li>\n</ul>\n","event":[{"listen":"prerequest","script":{"id":"7733a19c-3b1d-4d41-a1cf-ed9f70abb41b","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"50666301-e416-4a20-9317-35f7bc234e38","type":"text/javascript","exec":[""]}}],"_postman_id":"34eee527-797a-4a9a-bb30-440917d1591f","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Firewalls","item":[{"name":"Forwarding rules","item":[{"name":"Create forwarding rule","id":"c3844734-df39-421c-bd67-5782defa6a45","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"destination_ip\": \"1.2.3.4\",\n\t\"editable\": true,\n\t\"external_port\": \"12\",\n\t\"newRule\": true,\n\t\"port\": \"12\",\n\t\"protocol\": \"tcp\",\n\t\"source_ip\": [\n\t\t\"0.0.0.0/0\"\n\t],\n\t\"type\": \"inbound\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/forwardingRule","description":"<p>Use this endpoint to create inbound or outbound rules with the needed configuration. Endpoint URL requires a Firewall's <code>id</code>.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>destination_ip</code></td>\n<td>IP of a related device.</td>\n</tr>\n<tr>\n<td><code>external_port</code></td>\n<td>External port, can be a single number (<code>50</code>) or a range (<code>555-570</code>).</td>\n</tr>\n<tr>\n<td><code>port</code></td>\n<td>A server's port, can be a single number (<code>50</code>) or a range (<code>555-570</code>).</td>\n</tr>\n<tr>\n<td><code>protocol</code></td>\n<td>A network protocol, can be <code>tcp</code>, <code>udp</code>, or <code>icmp</code>.</td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td>A type of the rule, can be <code>inbound</code> our <code>outbound</code>.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","<FIREWALL_ID>","forwardingRule"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0c22d5ea-7166-4ebc-9fb6-c84f79e12ab9","name":"Create forwarding rule","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"destination_ip\": \"1.2.3.4\",\n\t\"editable\": true,\n\t\"external_port\": \"12\",\n\t\"newRule\": true,\n\t\"port\": \"12\",\n\t\"protocol\": \"tcp\",\n\t\"source_ip\": [\n\t\t\"0.0.0.0/0\"\n\t],\n\t\"type\": \"inbound\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/forwardingRule"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:05:35 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=W7%2FOuhnRBAN3Ey6%2BlJ5YLWcTWxchLys4tLso9I2lFmFR3Tbs73OHa2F4Gkw9R6bA6qJSEbeFDygr2j1dx3RTIjHr51xVyjdrJCwLcrzcRoAgAYXBwiXM32AvFOvk6rQ%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170ac770f1777b6-KBP"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Forwarding rules successfully created.\",\n    \"ip\": [\n        \"12.12.12.2\"\n    ],\n    \"ports\": [\n        443,\n        443\n    ],\n    \"type\": \"layer4\",\n    \"ssl_certificate\": null,\n    \"load_balancer_id\": 1080,\n    \"updated_at\": \"2024-05-22T07:36:15.000000Z\",\n    \"created_at\": \"2024-05-22T07:36:15.000000Z\",\n    \"id\": 19714,\n    \"forwardingRule\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"destination_ip\": \"<DESTINATION_IP>\",\n        \"external_port\": 1,\n        \"firewall\": {},\n        \"firewall_id\": 1,\n        \"id\": 1,\n        \"identifier\": \"<IDENTIFIER>\",\n        \"port\": 1,\n        \"protocol\": \"<PROTOCOL>\",\n        \"source_ip\": [],\n        \"type\": \"<TYPE>\",\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    },\n    \"warning\": \"<WARNING>\"\n}"}],"_postman_id":"c3844734-df39-421c-bd67-5782defa6a45"},{"name":"Edit forwarding rule","id":"f7a0692a-8aff-482e-8bbe-8788120d7b43","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"destination_ip\": \"10.50.10.15\",\n\t\"editable\": true,\n\t\"external_port\": \"60\",\n\t\"port\": \"234\",\n\t\"protocol\": \"tcp\",\n\t\"source_ip\": [\n\t\t\"0.0.0.0/0\"\n\t],\n\t\"type\": \"inbound\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/forwardingRule/<FORWARDING_RULE_ID>","description":"<p>Use this endpoint to adjust or edit any forwarding rule by its <code>id</code> in the URL. To edit a rule, use the same request body content as for the rule creation, <strong>except the</strong> <strong><code>newRule</code></strong> <strong>parameter</strong>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","<FIREWALL_ID>","forwardingRule","<FORWARDING_RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e11f4571-ee75-4120-9aac-48e4d95eb6cd","name":"Edit forwarding rule","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"destination_ip\": \"10.50.10.15\",\n\t\"editable\": true,\n\t\"external_port\": \"60\",\n\t\"port\": \"234\",\n\t\"protocol\": \"tcp\",\n\t\"source_ip\": [\n\t\t\"0.0.0.0/0\"\n\t],\n\t\"type\": \"inbound\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/forwardingRule/<FORWARDING_RULE_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:05:51 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=veulWtrJL3uLOn2V3j6kWiTPDbNrZMsQ7RKQw7EVytPCy44Rhw5mqMXgGGTP30GfvHfQ4R0ilzH9A%2BRhgFtsyu8jtgIjVmPIKEzuPhEsMCSI4MNdyxzeBOSLwn4qjZY%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170acde1bed77b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"forwardingRule\": {\n        \"id\": 1234,\n        \"firewall_id\": 123,\n        \"port\": 1,\n        \"protocol\": \"tcp\",\n        \"source_ip\": [\n            \"0.0.0.0/0\"\n        ],\n        \"destination_ip\": \"1.2.3.4\",\n        \"type\": \"inbound\",\n        \"description\": null,\n        \"created_at\": \"2022-03-18T08:30:42.000000Z\",\n        \"external_port\": \"22\",\n        \"firewall\": {\n            \"id\": 123,\n            \"local_id\": \"<ID>\",\n            \"name\": \"firewall-name\",\n            \"type\": \"2\",\n            \"network_id\": 321,\n            \"k8s_internet_rule\": 1,\n            \"in_bound_rules\": [],\n            \"out_bound_rules\": [],\n            \"created_at\": \"2022-03-18T09:29:23+01:00\",\n            \"hv_type\": \"public\",\n            \"deleted_at\": null,\n            \"device\": {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"deleted_at\": null,\n                \"failure_reason\": null,\n                \"hv_system\": {},\n                \"hv_system_id\": 1,\n                \"hv_type\": \"<HV_TYPE>\",\n                \"is_restoring\": null,\n                \"iso_mounted\": null,\n                \"localvmid\": \"<LOCALVMID>\",\n                \"monitoring\": 1,\n                \"notes\": null,\n                \"service_cluster_type\": null,\n                \"service_id\": 1,\n                \"serviceuser_lastchecked\": null,\n                \"serviceuser_status\": 1,\n                \"state\": 1,\n                \"template_id\": 1,\n                \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n                \"user_id\": 1,\n                \"vdc_service_type\": 1,\n                \"vmdisplayname\": \"<VMDISPLAYNAME>\",\n                \"vmhostname\": \"<VMHOSTNAME>\"\n            },\n            \"hv_system_id\": 1,\n            \"tenant\": {\n                \"account_manager\": null,\n                \"active\": false,\n                \"address\": \"<ADDRESS>\",\n                \"address2\": \"<ADDRESS2>\",\n                \"allow_bank_transfer\": false,\n                \"allow_trial_creation\": false,\n                \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n                \"billingplan\": 1,\n                \"city\": \"<CITY>\",\n                \"country\": \"<COUNTRY>\",\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"credits_code_id\": null,\n                \"currency_id\": null,\n                \"customer_id\": null,\n                \"customer_support_email\": \"<EMAIL>\",\n                \"customer_type\": null,\n                \"deactivation_date\": null,\n                \"deleted_at\": null,\n                \"demo\": false,\n                \"demo_end\": null,\n                \"demo_start\": null,\n                \"discount\": null,\n                \"financeemail\": [],\n                \"fixed_recurring\": 1,\n                \"fraud_risk_score\": 1,\n                \"hs_object_id\": null,\n                \"invoice_type\": \"<INVOICE_TYPE>\",\n                \"minimum_recurring\": 1,\n                \"otp_type\": null,\n                \"paid\": 1,\n                \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n                \"phone\": \"<PHONE>\",\n                \"postcode\": \"<POSTCODE>\",\n                \"report_frequency\": \"<REPORT_FREQUENCY>\",\n                \"requested\": null,\n                \"resource_pool\": null,\n                \"status\": 1,\n                \"supportemail\": \"<EMAIL>\",\n                \"tax_id\": 1,\n                \"taxed\": 1,\n                \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n                \"tenantname\": \"<TENANTNAME>\",\n                \"trial\": false,\n                \"trial_end\": \"<TRIAL_END>\",\n                \"trial_start\": null,\n                \"type\": 1,\n                \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n                \"upgrade_modal_active\": 1,\n                \"withhold_invoices\": 1\n            },\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        },\n        \"identifier\": \"<IDENTIFIER>\",\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    },\n    \"message\": \"Forwarding rules successfully updated.\"\n}"}],"_postman_id":"f7a0692a-8aff-482e-8bbe-8788120d7b43"},{"name":"Delete forwarding rule","id":"88abcccf-f72a-40ca-a88b-b875f5c296ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/forwardingRule/<RULE_ID>","description":"<p>This endpoint allows you to delete the forwarding rule by its <code>id</code> in the URL.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","<FIREWALL_ID>","forwardingRule","<RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"7fa61d64-8db9-40fa-904a-433d41e7c77a","name":"Delete forwarding rule","originalRequest":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/forwardingRule/<RULE_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:06:08 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=ns7qK5z1gjIlmmYcaZ4O3hBUcL0G2BqR%2Bt680CLpJcpn6InzFxql%2FC1RwPP9f9TC1XWQ3UpGoc83JM85nW28x6e1T6G5cqW2Do99w0pjfMNhm7%2BMkgDoy%2Bdks3zyl14%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170ad479ad377b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Forwarding rule has been deleted.\"\n}"}],"_postman_id":"88abcccf-f72a-40ca-a88b-b875f5c296ff"},{"name":"Create IPsec rule","id":"fc056627-61f8-4fc0-b9ff-4dbf14012e86","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"firewallId\": \"<FIREWALL_ID>\",\n    \"is_active\": true,\n    \"local_network\": \"1.2.3.4/12\",\n    \"mode_type\": \"tunnel\",\n    \"phase1_dh_group\": \"modp1024\",\n    \"phase1_encryption_algorithm\": \"aes256\",\n    \"phase1_hash_algorithm\": \"sha1\",\n    \"phase1_lifetime\": 28800,\n    \"phase2_encryption_algorithm\": \"aes256\",\n    \"phase2_hash_algorithm\": \"sha1\",\n    \"phase2_lifetime\": 3600,\n    \"phase2_pfs_group\": \"modp1024\",\n    \"preshared_key\": \"presharedkey\",\n    \"remote_gateway\": \"1.2.3.4\",\n    \"remote_network\": \"1.2.3.4/13\",\n    \"id\": \"<IPSEC_RULE_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/ipsec/update","description":"<p>Xelon HQ allows you to use IPsec – a group of protocols that are used together to set up encrypted connections between devices.</p>\n<p>Use this endpoint to create an IPsec rule for your Firewall. Each IPsec rule has its own unique <code>id</code>.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Descrption</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>mode</code></td>\n<td>Can be <code>tunnel</code> or <code>transport</code>.</td>\n</tr>\n<tr>\n<td><code>hash_algorithm</code></td>\n<td>For both phases, can be either <code>sha1</code>, <code>sha256</code>, <code>sha384</code>, or <code>sha512</code>.</td>\n</tr>\n<tr>\n<td><code>encryption_algorithm</code></td>\n<td>For both phases, can be either <code>aes128</code> or <code>aes256</code>.</td>\n</tr>\n<tr>\n<td><code>pfs_group</code></td>\n<td>Can be either <code>modp1024</code>, <code>modp1536</code>, <code>modp2048</code>, <code>modp3072</code>, <code>modp4096</code>, <code>modp6144</code>, <code>modp8192</code>, <code>ecp256</code>, <code>ecp384</code>, <code>ecp 521</code>, <code>modp1024s160</code>, <code>modp1536</code>, <code>modp2048</code>, <code>modp3072</code>, <code>modp4096</code>, <code>modp6144</code>, <code>modp8192</code>, <code>ecp256</code>, <code>ecp384</code>, <code>ecp521</code>, <code>modp1024s160</code>, <code>modp2048s224</code>, <code>modp2048s256</code>, <code>ecp256bp</code>, <code>ecp384bp</code>, or <code>ecp512bp</code></td>\n</tr>\n<tr>\n<td><code>dh_group</code></td>\n<td>Can be either <code>modp1024</code>, <code>modp1536</code>, <code>modp2048</code>, <code>modp3072</code>, <code>modp4096</code>, <code>modp6144</code>, <code>modp8192</code>, <code>ecp256</code>, <code>ecp384</code>, <code>ecp 521</code>, <code>modp1024s160</code>, <code>modp2048s224</code>, <code>modp2048s256</code>, <code>ecp256bp</code>, <code>ecp384bp</code>, or <code>ecp512bp</code>.</td>\n</tr>\n<tr>\n<td><code>lifetime</code></td>\n<td>For both phases, min: <code>0</code>, max: <code>1800</code>. Integer value in seconds, maximum 30 mins.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","ipsec","update"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"1a1590e3-5274-44e8-b8e5-e65181dadaac","name":"Create IPsec rule","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"firewallId\": \"<FIREWALL_ID>\",\n\t\"is_active\": true,\n\t\"local_network\": \"1.2.3.4/12\",\n\t\"mode_type\": \"tunnel\",\n\t\"phase1_dh_group\": \"modp1024\",\n\t\"phase1_encryption_algorithm\": \"aes256\",\n\t\"phase1_hash_algorithm\": \"sha1\",\n\t\"phase1_lifetime\": 28800,\n\t\"phase2_encryption_algorithm\": \"aes256\",\n\t\"phase2_hash_algorithm\": \"sha1\",\n\t\"phase2_lifetime\": 3600,\n\t\"phase2_pfs_group\": \"modp1024\",\n\t\"preshared_key\": \"presharedkey\",\n\t\"remote_gateway\": \"1.2.3.4\",\n\t\"remote_network\": \"1.2.3.4/13\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/ipsec/update"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:06:27 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=Zrc2rKkxWDjmYUWiwyTbnzyXArNDsx4xxrq722mz5B2dqf3qd6uWDlJpqJq%2B8ypb8ooVQP1jFuQUTEhSp0t3awCS%2FiZagVwk3UXau6A8aIRoQMUN0ojdV%2FkHNaEZgAo%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170adbc3bec77b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"ipsec\": {\n        \"is_active\": true,\n        \"remote_network\": \"1.2.3.4/12\",\n        \"local_network\": \"1.2.3.4/12\",\n        \"remote_gateway\": \"1.2.3.4/12\",\n        \"preshared_key\": \"presharedkey\",\n        \"phase1_encryption_algorithm\": \"aes256\",\n        \"phase2_encryption_algorithm\": \"aes256\",\n        \"phase1_hash_algorithm\": \"sha1\",\n        \"phase2_hash_algorithm\": \"sha1\",\n        \"phase1_dh_group\": \"modp1024\",\n        \"phase2_pfs_group\": \"modp1024\",\n        \"phase1_lifetime\": 28800,\n        \"phase2_lifetime\": 3600,\n        \"mode_type\": \"tunnel\",\n        \"firewall_id\": 1234,\n        \"created_at\": \"2022-06-06T11:06:27.000000Z\",\n        \"id\": 123,\n        \"identifier\": \"<IDENTIFIER>\",\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    },\n    \"message\": \"Ipsec successfully created\"\n}"}],"_postman_id":"fc056627-61f8-4fc0-b9ff-4dbf14012e86"},{"name":"Delete IPsec rule","id":"cb1e49a5-57dd-48fb-8c95-d1ea5f2fbd6e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/ipsec/delete/<IPSEC_RULE_ID>","description":"<p>This endpoint is used to delete IPsec rule by its <code>id</code> in the endpoint.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","ipsec","delete","<IPSEC_RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"148562b9-aa5c-4895-9c35-86af15513215","name":"Delete IPsec rule","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/ipsec/delete/<IPSEC_RULE_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:07:50 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=%2F8GBWQLphSlEtjTGC2ub1DjRkEDSSW4FfC7%2Bj%2F2JaD21XtOdBFN%2FIy%2FUSm5Aor8o%2FZ5uHDm9z%2FpsrGRxBgX0VheUSySqcizInH6FK2ox1J0%2FKJdci0yQ5w2Ef4pBE34%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170afc6796377b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"IPsec rule has been deleted.\"\n}"}],"_postman_id":"cb1e49a5-57dd-48fb-8c95-d1ea5f2fbd6e"},{"name":"Disable all outbound rules","id":"3fcd334a-2288-4b55-9925-bd6af2ec3280","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"k8s_internet_rule\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/forwardingRule/k8s","description":"<p>Use this endpoint to allow all outbound traffic and disable all outbound rules.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","<FIREWALL_ID>","forwardingRule","k8s"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"173fe71b-f4ef-4a90-a090-9c2355f35141","name":"Disable all outbound rules","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"k8s_internet_rule\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/forwardingRule/k8s"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:08:21 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=QAel5NXeuSA4k8Yw%2BXYhtmgAdZ6MzJaybniVsr9uXMU4n%2BoWDzRZ33DU3imMOYjQTt8rZwuHjmcWe0LYdkSYjtTq39zpMlMbohXhMY4U3G1p%2B6qa%2BE1gz%2FOApZz6OGA%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170b0895b6777b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Forwarding rule is being updated\"\n}"}],"_postman_id":"3fcd334a-2288-4b55-9925-bd6af2ec3280"}],"id":"fb466bc1-9476-4ed8-acdf-51141833fcbf","description":"<p>Forwarding rules can be <strong>inbound</strong> or <strong>outbound</strong>, set specifically for each Firewall.</p>\n<p>Each forwarding rule has its own unique <code>id</code>. You can find it within a <code>GET</code> <strong>List of firewalls</strong> endpoint below, inside a <code>forwarding_rules</code> array, OR when creating a rule.</p>\n<p>Configuring inbound rules allows you to provide Internet access onto your server. Outbound rules manage the traffic origin from your internal servers, going to the internet.</p>\n<blockquote>\n<p>For security reasons, we highly recommend to restrict traffic to only the sevices you need. As an example, if your server doesnt host a mail server, <strong>do not allow port 25 to communicate</strong> with the external machines.</p>\n</blockquote>\n","_postman_id":"fb466bc1-9476-4ed8-acdf-51141833fcbf","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"List of firewalls","id":"1f01f001-1329-4a24-b66f-fb3d48945701","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/firewall?cloudId=<CLOUD_ID>","description":"<p>This endpoint allows you to retrieve a list of all firewalls available within a network.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","firewall"],"host":["https://vdc.xelon.ch"],"query":[{"key":"cloudId","value":"<CLOUD_ID>"}],"variable":[]}},"response":[{"id":"00963796-c4b6-4919-b23a-d97887fd3ac9","name":"List of firewalls","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/firewall"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 08:37:06 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=Aa3SnqZTtNxd7NCq27FMsR9R9AM0eCChhMONmAOWbB6wXprtZBSQrjmxiOdPBHpaw14vpTwuSNHclZgrZ3u17GG172pukKvVuzcjOLiHXtae3uw2JgQL1VeRANLwMw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6edca4f8585f0f9e-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 789,\n        \"local_id\": \"<FIREWALL_LOCAL_ID>\",\n        \"name\": \"Firewall Name\",\n        \"type\": \"2\",\n        \"network_id\": 123,\n        \"k8s_internet_rule\": 1,\n        \"in_bound_rules\": [],\n        \"out_bound_rules\": [],\n        \"created_at\": \"2020-10-05T16:35:18+02:00\",\n        \"health\": \"green\",\n        \"ip\": \"1.2.3.4\",\n        \"internalIp\": \"1.2.3.4\",\n        \"hv_type\": \"public\",\n        \"forwarding_rules\": [\n            {\n                \"id\": 123,\n                \"firewall_id\": 123,\n                \"port\": \"8080\",\n                \"protocol\": \"tcp\",\n                \"source_ip\": [\n                    \"0.0.0.0/0\"\n                ],\n                \"destination_ip\": \"1.2.3.4\",\n                \"type\": \"inbound\",\n                \"description\": null,\n                \"created_at\": \"2021-06-15T12:12:44.000000Z\",\n                \"external_port\": null\n            }\n        ],\n        \"tenant\": {\n            \"tenantname\": \"Organization Name\",\n            \"parent_identifier\": null\n        },\n        \"breadcrumbs\": \"<BREADCRUMBS>\",\n        \"deleted_at\": null,\n        \"hv_system\": {\n            \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"type\": 1\n        },\n        \"hv_system_id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    }\n]"}],"_postman_id":"1f01f001-1329-4a24-b66f-fb3d48945701"},{"name":"Create firewall","id":"c7b295e9-bb23-4d89-8116-db6396b5b050","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"cloudId\": 1,\n    \"cluster_id\": false,\n    \"forwarding_rules\": {\n        \"inbound\": [\n            {\n                \"destination_ip\": \"10.0.0.1\",\n                \"port\": 80,\n                \"protocol\": \"tcp\",\n                \"source_ip\": [\n                    \"0.0.0.0/0\"\n                ],\n                \"type\": \"inbound\"\n            }\n        ],\n        \"outbound\": []\n    },\n    \"internal_ip_id\": 416,\n    \"internal_network_id\": 35,\n    \"ipsec_rules\": [\n        {\n            \"id\": \"d29c20e0-d08d-44d5-b439-53403b4ed0a2\",\n            \"is_active\": true,\n            \"local_network\": \"192.168.0.1/12\",\n            \"mode_type\": \"tunnel\",\n            \"phase1_dh_group\": \"modp1024\",\n            \"phase1_encryption_algorithm\": \"aes256\",\n            \"phase1_hash_algorithm\": \"sha1\",\n            \"phase1_lifetime\": 28800,\n            \"phase2_encryption_algorithm\": \"aes256\",\n            \"phase2_hash_algorithm\": \"sha1\",\n            \"phase2_lifetime\": 3600,\n            \"phase2_pfs_group\": \"modp1024\",\n            \"preshared_key\": \"192.168.0.1/12\",\n            \"remote_gateway\": \"192.168.0.1\",\n            \"remote_network\": \"192.168.0.1/12\"\n        }\n    ],\n    \"k8s_internet_rule\": false,\n    \"name\": \"docs-firewall\",\n    \"type\": 2,\n    \"ip\": \"<IP>\",\n    \"external_network_id\": \"<EXTERNAL_NETWORK_ID>\",\n    \"external_ip_id\": \"<EXTERNAL_IP_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/firewall","description":"<p>Use this endpoint to create new firewall with a set of forwarding rules.</p>\n<h3 id=\"additional-parameters\">Additional parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ip</code></td>\n<td>(optional) IP address to assign; must be a valid, non-reserved IP address.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","firewall"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"98b534bc-24dd-42c7-973a-0f00d8f9dda2","name":"Create firewall","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 1,\n\t\"cluster_id\": false,\n\t\"forwarding_rules\": {\n\t\t\"inbound\": [\n\t\t\t{\n\t\t\t\t\"destination_ip\": \"1.2.3.4\",\n\t\t\t\t\"port\": 80,\n\t\t\t\t\"protocol\": \"tcp\",\n\t\t\t\t\"source_ip\": [\n\t\t\t\t\t\"0.0.0.0/0\"\n\t\t\t\t],\n\t\t\t\t\"type\": \"inbound\"\n\t\t\t}\n\t\t],\n\t\t\"outbound\": []\n\t},\n\t\"internal_ip_id\": 123,\n\t\"internal_network_id\": 45,\n\t\"ipsec_rules\": [\n\t\t{\n\t\t\t\"id\": \"<ID>\",\n\t\t\t\"is_active\": true,\n\t\t\t\"local_network\": \"1.2.3.4/12\",\n\t\t\t\"mode_type\": \"tunnel\",\n\t\t\t\"phase1_dh_group\": \"modp1024\",\n\t\t\t\"phase1_encryption_algorithm\": \"aes256\",\n\t\t\t\"phase1_hash_algorithm\": \"sha1\",\n\t\t\t\"phase1_lifetime\": 28800,\n\t\t\t\"phase2_encryption_algorithm\": \"aes256\",\n\t\t\t\"phase2_hash_algorithm\": \"sha1\",\n\t\t\t\"phase2_lifetime\": 3600,\n\t\t\t\"phase2_pfs_group\": \"modp1024\",\n\t\t\t\"preshared_key\": \"1.2.3.4/12\",\n\t\t\t\"remote_gateway\": \"1.2.3.4\",\n\t\t\t\"remote_network\": \"1.2.3.4/12\"\n\t\t}\n\t],\n\t\"k8s_internet_rule\": false,\n\t\"name\": \"firewall-name\",\n\t\"type\": 2\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/firewall"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 08:29:23 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=Z%2F%2BMXG5frNbrLI%2FgS3jE0yqrfX5zwFXlcCPv2uhUBpTGuvK6mQixnRefyBhsEYGF%2BOOeIsCTf7C8L%2BtF2WVs4lCH3hA6q70Nw9mcQ6cstBYxHGEZ0Z2SR%2Bsn1bGMgQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6edc99ac9ce60f9e-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Firewall docs-firewall is being created.\",\n    \"firewall\": {\n        \"local_id\": \"<ID>\",\n        \"name\": \"firewall-name\",\n        \"type\": 2,\n        \"network_id\": 123,\n        \"tenant_id\": 123,\n        \"vm_id\": 1234,\n        \"k8s_internet_rule\": false,\n        \"created_at\": \"2022-03-18T09:29:23+01:00\",\n        \"id\": 456,\n        \"hv_type\": \"public\",\n        \"hv_system_id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    }\n}"}],"_postman_id":"c7b295e9-bb23-4d89-8116-db6396b5b050"},{"name":"Create kubernetes firewall","id":"b5d02c31-5b0f-4132-a499-a7ca4d952c44","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"cloudId\": 4,\n    \"cluster_id\": 123,\n    \"forwarding_rules\": {\n        \"inbound\": [],\n        \"outbound\": []\n    },\n    \"internal_network_id\": 123,\n    \"ipsec_rules\": [],\n    \"k8s_internet_rule\": false,\n    \"name\": \"kubernetes-firewall\",\n    \"type\": \"1\",\n    \"ip\": \"<IP>\",\n    \"external_network_id\": \"<EXTERNAL_NETWORK_ID>\",\n    \"external_ip_id\": \"<EXTERNAL_IP_ID>\",\n    \"internal_ip_id\": \"<INTERNAL_IP_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/firewall","description":"<p>This endpoint allows you to create a kubernetes FIrewall.</p>\n<h3 id=\"additional-parameters\">Additional parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>ip</code></td>\n<td>(optional) IP address to assign; must be a valid, non-reserved IP address.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","firewall"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"ee1edac8-20ef-4a52-9e8c-f98f35a79374","name":"Create kubernetes firewall","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 4,\n\t\"cluster_id\": 123,\n\t\"forwarding_rules\": {\n\t\t\"inbound\": [],\n\t\t\"outbound\": []\n\t},\n\t\"internal_network_id\": 123,\n\t\"ipsec_rules\": [],\n\t\"k8s_internet_rule\": false,\n\t\"name\": \"kubernetes-firewall\",\n\t\"type\": \"1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/firewall"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 08:52:10 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=F60nh2%2BdK3V9vZbm0W%2BsdW8FGmlEYlH9%2FxBqUhTYepkTGXimDenqgl0%2FsuxwH8QlFt5c86EluPi13lr7ywF3z3jOBDYE8Of%2FuwO5f7UMifv9mu2zJeXq08qznBIKDg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6edcbb099e9c38c0-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Firewall kubernetes-firewall is being created.\",\n    \"firewall\": {\n        \"local_id\": \"<ID>\",\n        \"name\": \"kubernetes-firewall\",\n        \"type\": 1,\n        \"network_id\": 123,\n        \"tenant_id\": 123,\n        \"vm_id\": 1234,\n        \"k8s_internet_rule\": false,\n        \"created_at\": \"2022-03-18T09:52:10+01:00\",\n        \"id\": 321,\n        \"hv_type\": \"public\",\n        \"hv_system_id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    }\n}"}],"_postman_id":"b5d02c31-5b0f-4132-a499-a7ca4d952c44"},{"name":"Get firewall info","id":"95654518-e111-41ae-a05b-76a5995cc447","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>","description":"<p>Use this endpoint to retrieve a complete info on a specific firewall. Endpoint URL requires a firewall's <code>local_id</code>.</p>\n<h3 id=\"response-body\">Response body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>A database-stored ID of your firewall.</td>\n</tr>\n<tr>\n<td><code>local_id</code></td>\n<td>A unique ID assigned to the firewall.</td>\n</tr>\n<tr>\n<td><code>vm_id</code></td>\n<td>An ID of the firewall-related virtual machine.</td>\n</tr>\n<tr>\n<td><code>k8s_internet_rule</code></td>\n<td>If <code>1</code>, the internet will be connected.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","<FIREWALL_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"463795a9-9d0f-4e57-8e19-15da70277881","name":"Get firewall info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 08 Jun 2022 09:45:46 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=ocvvkmaa51H9vybyE55Ll5%2FXNcOrLbeY2Gb7cKP5fgxDJLpy95ZDXMt2r5WtL6S%2BTfcbX%2FYt7XhFldhfiSF5pq2jmLb%2BxcVS5PJTX0ITKdGCyUfH%2Bat4vT0QxNZikws%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7180b25078c22319-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 123,\n    \"local_id\": \"<ID>\",\n    \"name\": \"Firewall Name\",\n    \"type\": \"2\",\n    \"tenant_id\": \"123\",\n    \"vm_id\": \"1234\",\n    \"network_id\": 321,\n    \"k8s_internet_rule\": 1,\n    \"in_bound_rules\": [],\n    \"out_bound_rules\": [],\n    \"created_at\": \"2020-10-05T16:35:18+02:00\",\n    \"internalIp\": \"1.2.3.4\",\n    \"ip\": \"1.2.3.4\",\n    \"hv_type\": \"public\",\n    \"state\": \"ready\",\n    \"forwarding_rules\": [\n        {\n            \"id\": 123,\n            \"firewall_id\": 321,\n            \"port\": \"80\",\n            \"protocol\": \"tcp\",\n            \"source_ip\": [\n                \"0.0.0.0/0\"\n            ],\n            \"destination_ip\": \"1.2.3.4\",\n            \"type\": \"inbound\",\n            \"description\": null,\n            \"created_at\": \"2020-10-05T14:35:18.000000Z\",\n            \"external_port\": null\n        }\n    ],\n    \"ipsec\": [],\n    \"creator\": \"<CREATOR>\",\n    \"deleted_at\": null,\n    \"device\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"deleted_at\": null,\n        \"failure_reason\": null,\n        \"hv_system\": {},\n        \"hv_system_id\": 1,\n        \"hv_type\": \"<HV_TYPE>\",\n        \"is_restoring\": null,\n        \"iso_mounted\": null,\n        \"localvmid\": \"<LOCALVMID>\",\n        \"monitoring\": 1,\n        \"notes\": null,\n        \"service_cluster_type\": null,\n        \"service_id\": 1,\n        \"serviceuser_lastchecked\": null,\n        \"serviceuser_status\": 1,\n        \"state\": 1,\n        \"template_id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"user_id\": 1,\n        \"vdc_service_type\": 1,\n        \"vmdisplayname\": \"<VMDISPLAYNAME>\",\n        \"vmhostname\": \"<VMHOSTNAME>\"\n    },\n    \"hv_system_id\": 1,\n    \"network\": [\n        {\n            \"assigned\": \"<ASSIGNED>\",\n            \"displayname\": \"<DISPLAYNAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"tenant_identifier\": \"<TENANT_IDENTIFIER>\"\n        }\n    ],\n    \"owner\": \"<OWNER>\",\n    \"tenant\": {\n        \"account_manager\": null,\n        \"active\": false,\n        \"address\": \"<ADDRESS>\",\n        \"address2\": \"<ADDRESS2>\",\n        \"allow_bank_transfer\": false,\n        \"allow_trial_creation\": false,\n        \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n        \"billingplan\": 1,\n        \"city\": \"<CITY>\",\n        \"country\": \"<COUNTRY>\",\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"credits_code_id\": null,\n        \"currency_id\": null,\n        \"customer_id\": null,\n        \"customer_support_email\": \"<EMAIL>\",\n        \"customer_type\": null,\n        \"deactivation_date\": null,\n        \"deleted_at\": null,\n        \"demo\": false,\n        \"demo_end\": null,\n        \"demo_start\": null,\n        \"discount\": null,\n        \"financeemail\": [],\n        \"fixed_recurring\": 1,\n        \"fraud_risk_score\": 1,\n        \"hs_object_id\": null,\n        \"invoice_type\": \"<INVOICE_TYPE>\",\n        \"minimum_recurring\": 1,\n        \"otp_type\": null,\n        \"paid\": 1,\n        \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n        \"phone\": \"<PHONE>\",\n        \"postcode\": \"<POSTCODE>\",\n        \"report_frequency\": \"<REPORT_FREQUENCY>\",\n        \"requested\": null,\n        \"resource_pool\": null,\n        \"status\": 1,\n        \"supportemail\": \"<EMAIL>\",\n        \"tax_id\": 1,\n        \"taxed\": 1,\n        \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n        \"tenantname\": \"<TENANTNAME>\",\n        \"trial\": false,\n        \"trial_end\": \"<TRIAL_END>\",\n        \"trial_start\": null,\n        \"type\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"upgrade_modal_active\": 1,\n        \"withhold_invoices\": 1\n    },\n    \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n}"}],"_postman_id":"95654518-e111-41ae-a05b-76a5995cc447"},{"name":"Update firewall name","id":"e2e35679-716b-4b34-81f9-8869ed0cb3ef","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"name\": \"test-firewall\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/update-name","description":"<p>This endpoint allows you to change the firewall's name by its <code>id</code> in the URL and new <code>name</code> in the request body.</p>\n<blockquote>\n<p>Name should have only lowercase letters. Numbers and hyphen dash ( - ) is allowed, while spaces are not.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","<FIREWALL_ID>","update-name"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"2129a728-e3a4-44f8-a806-bcc631905de3","name":"Update firewall name","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n\t\"name\": \"test-firewall\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>/update-name"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 08 Jun 2022 10:29:34 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=624Q4LpZ5IUC2QlscuP7nm%2FD%2BWDSGG3yJGtSGdWUYKJHgI94hw%2BNSjANxSS%2FIG%2BkNGidmq8Y9YsU6oe39V87OJhrBrqVlT8P6fUNztkquU24jpqLNvVbtD69vqsp6tw%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7180f2784dac2dec-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Firewall name has been updated\"\n}"}],"_postman_id":"e2e35679-716b-4b34-81f9-8869ed0cb3ef"},{"name":"Delete firewall","id":"2f9ab739-e8af-40e6-b84b-7ee4c0f8205e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>","description":"<p>This endpoint deletes a specific firewall.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","firewall","<FIREWALL_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"8e461f9b-09c6-4115-9901-9a9a040fa05d","name":"Delete firewall","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/firewall/<FIREWALL_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 08 Jun 2022 10:35:30 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=P%2Bii1WVCm7ycATbpiJWKBFibxSg7IdYs7kClLcbhDlak1WJ3db3ieNsIanLj3RiK9%2FhDCrDQ9IMikUXFz2IbggicYQdtzVnEhQC7sWnmh%2FkVzj%2B9Q6JUzWZFTp87HvM%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7180fb252a902dec-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Firewall has been deleted.\"\n}"}],"_postman_id":"2f9ab739-e8af-40e6-b84b-7ee4c0f8205e"}],"id":"9efb7336-a483-4d53-99af-5be263af4159","description":"<p>Xelon HQ Firewall sits in between the web and your internal network or device.</p>\n<p>Each Firewall within the platform has its own unique <code>id</code>.</p>\n<blockquote>\n<p>Explore our <a href=\"https://www.xelon.ch/docs/hq-firewall-service\">user guide</a> on Firewalls to dive deeper.</p>\n</blockquote>\n","_postman_id":"9efb7336-a483-4d53-99af-5be263af4159","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Persistent Storage","item":[{"name":"List of persistent storages","event":[{"listen":"test","script":{"id":"9ef79630-2f6f-4440-a8e8-cff6c6f87743","exec":["pm.test(\"Correct response format JSON\", function(){","    pm.response.to.have.jsonBody()","});","const jsonData = pm.response.json();","pm.test(\"Res should exist, be a Array\", function () {","    pm.expect(jsonData).to.be.a(\"Array\");","});","pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});","if(jsonData.length>0){","    var i = 0;","while(i<jsonData.length){","pm.test(\"Check thet we have all declared fields at \"+ (i+1) +\" elem\", function(){","    pm.expect(jsonData[i]).to.have.property(\"id\");","    pm.expect(jsonData[i]).to.have.property(\"local_id\");","    pm.expect(jsonData[i]).to.have.property(\"type\");","    pm.expect(jsonData[i]).to.have.property(\"name\");","    pm.expect(jsonData[i]).to.have.property(\"block_storage_id\");","    pm.expect(jsonData[i]).to.have.property(\"status\");","    pm.expect(jsonData[i]).to.have.property(\"formatted\");","    pm.expect(jsonData[i]).to.have.property(\"uuid\");","    pm.expect(jsonData[i]).to.have.property(\"created_at\");","    pm.expect(jsonData[i]).to.have.property(\"updated_at\");","    pm.expect(jsonData[i]).to.have.property(\"deleted_at\");","    pm.expect(jsonData[i]).to.have.property(\"hv_system_id\");"," //   pm.expect(jsonData[i]).to.have.property(\"capacity\");","  //  pm.expect(jsonData[i]).to.have.property(\"state\");","    pm.expect(jsonData[i]).to.have.property(\"hv_type\");","    pm.expect(jsonData[i]).to.have.property(\"tenant\");","    pm.expect(jsonData[i]).to.have.property(\"block_storage\");","   // pm.expect(jsonData[i]).to.have.property(\"assigned_servers\");","});","pm.test('Check typeOf propertys at '+ (i+1) +\" elem\", function(){","    pm.expect(jsonData[i].id).to.be.a(\"Number\");","    pm.expect(jsonData[i].local_id).to.be.a(\"String\");","    pm.expect(jsonData[i].type).to.be.a(\"Number\");","    pm.expect(jsonData[i].name).to.be.a(\"String\");","    pm.expect(jsonData[i].block_storage_id).to.be.a(\"Number\");","    pm.expect(jsonData[i].status).to.be.a(\"Number\");","    pm.expect(jsonData[i].formatted).to.be.a(\"Number\");","    pm.expect(jsonData[i].uuid).to.be.a(\"String\");","    pm.expect(jsonData[i].created_at).to.be.a(\"String\");","    pm.expect(jsonData[i].updated_at).to.be.a(\"String\");","   // pm.expect(jsonData[i].deleted_at).to.be.a(\"\");","    pm.expect(jsonData[i].hv_system_id).to.be.a(\"Number\");","   // pm.expect(jsonData[i].capacity).to.be.a(\"Number\");","   // pm.expect(jsonData[i].state).to.be.a(\"Boolean\");","    pm.expect(jsonData[i].hv_type).to.be.a(\"String\");","    pm.expect(jsonData[i].tenant).to.be.a(\"Object\");","    pm.expect(jsonData[i].block_storage).to.be.a(\"Object\");","   // pm.expect(jsonData[i].assigned_servers).to.be.a(\"Array\");","});","i++;","}","}",""],"type":"text/javascript"}}],"id":"9c378c02-a568-436e-9cd8-4a4af4507279","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/persistentStorage","description":"<p>Retrieves a list of all available Persistent Storages within a specific organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","persistentStorage"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"209a75e5-4ca7-4a8c-bcce-a592e21d3427","name":"List of persistent storages","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/persistentStorage"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 08:56:07 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=0dcBfaaJ3Z4la71OpY4rDXEHLni0YK20gYmc6Y0N%2FKnuckB%2BViNaulMD%2B2qg2dB8iFXeZ7FvKDWRQISQxbqN1aq6FysoG0n%2FtSgsWrM7sUBdNxqkjNqUEYsCMEbGOA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6edcc0ca8dbf38c0-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 123,\n        \"local_id\": \"123b456a\",\n        \"type\": 2,\n        \"name\": \"name\",\n        \"block_storage_id\": 321,\n        \"status\": 0,\n        \"formatted\": 1,\n        \"uuid\": \"<UUID>\",\n        \"created_at\": \"2021-05-06T17:08:44+02:00\",\n        \"hv_type\": \"public\",\n        \"tenant\": {\n            \"tenantname\": \"Organization Name\",\n            \"tenant_identifier\": \"<TENANT_ID>\",\n            \"parent_identifier\": null\n        },\n        \"block_storage\": {\n            \"id\": 123,\n            \"local_id\": \"123b456a\",\n            \"created_at\": \"2021-05-06T17:08:44+02:00\",\n            \"status\": 1,\n            \"hv_type\": \"public\",\n            \"deleted_at\": null,\n            \"hvsystem_id\": 1,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n        },\n        \"assigned_servers\": [],\n        \"capacity\": 1,\n        \"deleted_at\": null,\n        \"hv_system\": {\n            \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"type\": 1\n        },\n        \"hv_system_id\": 1,\n        \"k8s_cluster_id\": null,\n        \"state\": false,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    }\n]"}],"_postman_id":"9c378c02-a568-436e-9cd8-4a4af4507279"},{"name":"Create persistent storage","id":"31bb7a49-33d1-410c-8d6c-7f20f5f77438","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 1,\n\t\"name\": \"persist-stor-age\",\n\t\"server_id\": \"<VM_ID>\",\n\t\"size\": 15,\n\t\"type\": 2\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/persistentStorage","description":"<p>Creates a new persistent storage.</p>\n<p><code>name</code>: only lowercase letters, numbers and hyphen-minus ( - ) allowed, without spaces.</p>\n<p><code>size</code>: 5 to 1000 GB</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","persistentStorage"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"396f62e1-a068-4d2c-a248-ef5b1b0fc631","name":"Create persistent storage","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"cloudId\": 1,\n\t\"name\": \"persist-stor-age\",\n\t\"server_id\": \"<VM_ID>\",\n\t\"size\": 15,\n\t\"type\": 2\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/persistentStorage"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 18 Mar 2022 08:53:43 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=uRaKQXN4mzyifcDnulrCy4Sqw9t5ukMAWU7z%2FATYF5NUJan3RK5ITBHB87f5VOJSyRLZNMwYmhaRjbRiO3nCp9Bugsq0XQSmoj8dGkcTqIh2kbnKYzBFdTMsbcEaQA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6edcbd4fc8d838c0-VIE"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Persistent storage successfully created.\",\n    \"persistentStorage\": {\n        \"local_id\": \"123b123c\",\n        \"type\": 2,\n        \"name\": \"persist-stor-age\",\n        \"block_storage_id\": 1234,\n        \"hv_system_id\": 1,\n        \"updated_at\": \"2022-03-18T09:53:43+01:00\",\n        \"created_at\": \"2022-03-18T09:53:43+01:00\",\n        \"id\": 1234,\n        \"hv_type\": \"public\"\n    }\n}"}],"_postman_id":"31bb7a49-33d1-410c-8d6c-7f20f5f77438"},{"name":"Extend persistent storage","id":"5b0a34df-d71b-4a08-84f1-8de484d88c9c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"size\": 10\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/persistentStorage/<LOCAL_ID>","description":"<p>Extends an existing Persistent Storage capacity. Endpoint URL requires a <code>local_id</code>.</p>\n<p><code>size</code>: 5 to 1000 GB</p>\n<blockquote>\n<p>You can't set a size smaller than the current one.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","persistentStorage","<LOCAL_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e66c005a-30bd-402d-8963-3ba7a239234f","name":"Extend persistent storage","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"size\": 10\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/persistentStorage/<LOCAL_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:09:38 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=GAAxc89oGGFXH6EIJoF1yTDkBnZfZuuptvSmg4SMpYvEbxOG4GtG1ofRhQvckGUp9ZNTUkMeoOP0GlszeN45LQmcQyRT09ODQge7QeIkfiziKlmPPZIaBPVeW4%2FAIa0%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170b2696dd877b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Persistent storage has been extended.\"\n}"}],"_postman_id":"5b0a34df-d71b-4a08-84f1-8de484d88c9c"},{"name":"Attach persistent storage to device","id":"9b5e0932-afc7-4cc2-8c61-428b041e6c6e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"server_id\": \"<VM_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/persistentStorage/<LOCAL_ID>/addToVirtualMachine","description":"<p>Attaches a specific Persistent Storage to a specific device.</p>\n<p>Request body requires <code>server_id</code> which equals <code>localvmid</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","persistentStorage","<LOCAL_ID>","addToVirtualMachine"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"699dd3d6-606a-4fab-a454-bb63e1ded7e4","name":"Attach persistent storage to device","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n\t\"server_id\": \"<VM_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/persistentStorage/<LOCAL_ID>/addToVirtualMachine"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:14:38 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=6zafLrxyhDOPM7UGK5%2FL9%2By8bzPT9s55MZMp3SJebdLOyaHPOuB44A%2B6sAn3O5bUuvCy%2BaLysKktra2c56ACP85uA48%2Bd2O1Rwa%2BF1kiI11I%2BIJYnBOXsoG4lWRCkxM%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170b9b66c9177b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Persistent storage has been attached.\"\n}"}],"_postman_id":"9b5e0932-afc7-4cc2-8c61-428b041e6c6e"},{"name":"Detach persistent storage from device","id":"179297a8-28be-411b-a739-2378646cedaf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"server_id\": \"<VM_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/persistentStorage/<LOCAL_ID>/removeFromVirtualMachine","description":"<p>Detaches Persistent Storage from a device.</p>\n<p>Request body requires <code>server_id</code> which equals <code>localvmid</code>.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","persistentStorage","<LOCAL_ID>","removeFromVirtualMachine"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"2ecb76af-83aa-435c-a612-cff441492cba","name":"Detach persistent storage from device","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"server_id\": \"<VM_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/persistentStorage/<LOCAL_ID>/removeFromVirtualMachine"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:14:59 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=yCwnZTMSApL2grgh8rkIzLDDBu2k%2FiMXchXLBch%2BOToX1mPLv9Ebd3nkPWC5cL0coU5hstw9X%2BvU%2BaEgDiDSsgNzh5Eflelrk37TA9ZxAMU6osMY2qGInrSn9S7P7HQ%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170ba3f7b3577b6-KBP"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Persistent storage has been detached.\"\n}"}],"_postman_id":"179297a8-28be-411b-a739-2378646cedaf"},{"name":"Delete persistent storage","id":"974ad459-7d7e-410f-9459-12051fb85756","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/persistentStorage/<LOCAL_ID>","description":"<p>Deletes a Persistent Storage if no devices are attached to it. Endpoint URL requires <code>local_id</code>.</p>\n<blockquote>\n<p>Before deletion, you should delete devices assigned to this Persistent Storage.</p>\n</blockquote>\n<h3 id=\"additional-parameters\">Additional parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>password</code></td>\n<td>Your account password; required when password confirmation is enabled.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","persistentStorage","<LOCAL_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"5d024953-2173-418e-9019-f2d9c490763e","name":"Delete persistent storage","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/persistentStorage/<LOCAL_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 06 Jun 2022 11:15:42 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"x-powered-by","value":"PHP/7.4.29"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=RQhFEATWzHoPzeSt7Te6i7cW223QUdzBa%2B6cYeues6WqQY3qwpVKbZZd7%2B17J104IPchrkjsSmwFTwwSL1%2Bd5by1xjyifAzqqaSxcqJzNG4TyS96DZMXlu78KdX%2F2Lg%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7170bb4a1aa277b6-KBP"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n\t\"message\": \"Persistent storage has been deleted.\"\n}"}],"_postman_id":"974ad459-7d7e-410f-9459-12051fb85756"},{"name":"Query persistent storages","id":"77607f4c-074c-45d7-8d2f-9c470ff0ed53","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/persistentStorage/query?name=<NAME>","description":"<p>Use this endpoint to search persistent storages of an organization.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","persistentStorage","query"],"host":["https://vdc.xelon.ch"],"query":[{"key":"name","value":"<NAME>"}],"variable":[]}},"response":[{"id":"456241a0-bd1d-43a8-b871-8994b7627a43","name":"Query persistent storages","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://vdc.xelon.ch/api/service/<TENANT_ID>/persistentStorage/query?name=<NAME>","host":["https://vdc.xelon.ch"],"path":["api","service","<TENANT_ID>","persistentStorage","query"],"query":[{"key":"name","value":"<NAME>"}]},"description":"Use this endpoint to search persistent storages of an organization."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"assigned_servers\": [],\n    \"block_storage\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"deleted_at\": null,\n        \"hv_type\": \"<HV_TYPE>\",\n        \"hvsystem_id\": 1,\n        \"id\": 1,\n        \"local_id\": \"<LOCAL_ID>\",\n        \"status\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\"\n    },\n    \"block_storage_id\": 1,\n    \"capacity\": 1,\n    \"created_at\": \"2026-01-01T12:00:00+01:00\",\n    \"deleted_at\": null,\n    \"formatted\": 1,\n    \"hv_system\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"display_name\": \"<DISPLAY_NAME>\",\n        \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n        \"hv_type\": \"<HV_TYPE>\",\n        \"id\": 1,\n        \"identifier\": \"<IDENTIFIER>\",\n        \"main_cloud\": 1,\n        \"type\": 1,\n        \"version\": 1\n    },\n    \"hv_system_id\": 1,\n    \"hv_type\": \"<HV_TYPE>\",\n    \"id\": 1,\n    \"k8s_cluster_id\": null,\n    \"local_id\": \"<LOCAL_ID>\",\n    \"name\": \"<NAME>\",\n    \"status\": 1,\n    \"tenant\": {\n        \"account_manager\": 1,\n        \"active\": false,\n        \"address\": \"<ADDRESS>\",\n        \"address2\": \"<ADDRESS2>\",\n        \"allow_bank_transfer\": false,\n        \"allow_trial_creation\": false,\n        \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n        \"billingplan\": 1,\n        \"city\": \"<CITY>\",\n        \"country\": \"<COUNTRY>\",\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"credits_code_id\": null,\n        \"currency_id\": null,\n        \"customer_id\": 1,\n        \"customer_support_email\": \"<EMAIL>\",\n        \"customer_type\": \"<CUSTOMER_TYPE>\",\n        \"deactivation_date\": null,\n        \"deleted_at\": null,\n        \"demo\": false,\n        \"demo_end\": \"<DEMO_END>\",\n        \"demo_start\": null,\n        \"discount\": null,\n        \"financeemail\": [],\n        \"fixed_recurring\": 1,\n        \"fraud_risk_score\": 1,\n        \"hs_object_id\": null,\n        \"invoice_type\": \"<INVOICE_TYPE>\",\n        \"minimum_recurring\": 1,\n        \"otp_type\": null,\n        \"paid\": 1,\n        \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n        \"phone\": \"<PHONE>\",\n        \"postcode\": \"<POSTCODE>\",\n        \"report_frequency\": \"<REPORT_FREQUENCY>\",\n        \"requested\": 1,\n        \"resource_pool\": \"<RESOURCE_POOL>\",\n        \"status\": 1,\n        \"supportemail\": \"<EMAIL>\",\n        \"tax_id\": 1,\n        \"taxed\": 1,\n        \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n        \"tenantname\": \"<TENANTNAME>\",\n        \"trial\": false,\n        \"trial_end\": \"<TRIAL_END>\",\n        \"trial_start\": \"<TRIAL_START>\",\n        \"type\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"upgrade_modal_active\": 1,\n        \"withhold_invoices\": 1\n    },\n    \"type\": 1,\n    \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n    \"uuid\": \"<UUID>\"\n}"}],"_postman_id":"77607f4c-074c-45d7-8d2f-9c470ff0ed53"}],"id":"8e38d039-e4be-4456-8e23-a902d73eb778","description":"<p>Xelon HQ Persistent Storage can outlive other Kubernetes Pods to retain data for long periods of time</p>\n<p>Kubernetes Pods read and write data from/to the Persistent Storage. This way, the data is not stored in the Pod itself, so that a Pod can be destroyed without losing data.</p>\n<blockquote>\n<p>You can manage Persistent Storages by their unique <code>local_id</code>.</p>\n</blockquote>\n","_postman_id":"8e38d039-e4be-4456-8e23-a902d73eb778","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"SSH","item":[{"name":"Add SSH key","id":"478dfc3d-9e26-426c-98a8-0a8378f3ebf1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"Just Another SSH\",\n\t\"ssh_key\": \"ssh-rsa <SSH_KEY_CONTENT>\"\n}\n"},"url":"https://vdc.xelon.ch/api/service/vmlist/ssh/add","description":"<p>This endpoint adds a new SSH key to the platform. The request body should contain the following parameters:</p>\n<ul>\n<li><code>name</code> – a display name of your SSH key</li>\n<li><code>ssh_key</code> – the SSH key content</li>\n</ul>\n<p>Within the <code>200</code> response, you'll also get the following parameters:</p>\n<ul>\n<li><code>id</code> – a unique ID for your fresh SSH key</li>\n<li><code>fingerprint</code> – a unique fingerprint of your SSH key</li>\n</ul>\n<blockquote>\n<p>Usually, fingerprints are used for easy identification or verification of the host you are connecting to.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","ssh","add"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"a73e22f9-79c7-42a3-be1e-87c6bbc3c2e7","name":"Add SSH key","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n\t\"name\": \"Just Another SSH\",\n\t\"ssh_key\": \"ssh-rsa <SSH_KEY>\"\n}\n","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/ssh/add"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:39:40 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=V1wx1EZ%2F2gZLYIDIHzUm3nY%2BSJMrSZyURyrLR%2BDsoI8ZpaaYXYysqftAnkolR0B0F%2BqVRUBUzoyIy0ei%2B2EtIoJUOjUYJtSqHGlyxmZWYvU9VNWQ%2Bk4QnPKTZz8TTA%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed622cfcc3a38bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 123,\n    \"name\": \"Just Another SSH\",\n    \"created_at\": \"2022-03-17 14:39:40\",\n    \"fingerprint\": \"<FINGERPRINT>\"\n}"}],"_postman_id":"478dfc3d-9e26-426c-98a8-0a8378f3ebf1"},{"name":"List of all SSH keys","id":"8288178c-d7fb-44ef-a8aa-c1b424571c6a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/sshKeys","description":"<p>This endpoint retrieves a list of all SSH keys available for your user.</p>\n<blockquote>\n<p>Use <code>id</code> as <code>sshKeyId</code> for SSH-related requests.</p>\n</blockquote>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","sshKeys"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"35202771-f228-47cf-963a-cafae2925f88","name":"List of all SSH keys","originalRequest":{"method":"GET","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":""},"url":"https://vdc.xelon.ch/api/service/sshKeys"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:40:53 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=x8d4yVxzcy1Q7HTL%2FRec8HDcu91ytQhNPC%2B7rOxhyOcPYF19rBR8F2KAFNLhGvK6DHlc9n5WSu0iepHFhyodPCpuPg4zAk73pSF0meHdk8iEJcRsSWXMMhSbvE8e9w%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed624969f6238bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 123,\n        \"name\": \"Just Another SSA\",\n        \"created_at\": \"2022-03-17T13:42:54+01:00\",\n        \"fingerprint\": \"<FINGERPRINT>\"\n    },\n    {\n        \"id\": 321,\n        \"name\": \"Just Another SSH\",\n        \"created_at\": \"2022-03-17T14:39:40+01:00\",\n        \"fingerprint\": \"<FINGERPRINT>\"\n    }\n]"}],"_postman_id":"8288178c-d7fb-44ef-a8aa-c1b424571c6a"},{"name":"Delete SSH key","id":"a0419d35-a018-4c8c-b670-a977cd0d33d9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/ssh/<sshKeyId>/delete","description":"<p>This request deletes an SSH key. Endpoint requires <code>sshKeyId</code> in the URL, which equals your SSH key <code>id</code> mentioned above.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","vmlist","ssh","<sshKeyId>","delete"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"91e1c294-d827-4b2a-afb9-0b2218fce117","name":"Delete SSH key","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/vmlist/ssh/<sshkeyId>/delete"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 17 Mar 2022 13:47:02 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"vary","value":"Accept-Encoding"},{"key":"x-powered-by","value":"PHP/7.4.28"},{"key":"Cache-Control","value":"no-cache, private"},{"key":"access-control-allow-origin","value":"*"},{"key":"strict-transport-security","value":"max-age=15724800; includeSubDomains"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=0sYk7doolrAR9CVQi7m3A1g2d1sCnR%2FVTHm1QU3GyvVylIHE2Dd7FB1bumN15PbkeKeQ28LqYqGVX3AhiH2n1URuNoxmDTkSXIk829qPZLK1Gd1M7t3jnqm5Qqtd9Q%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6ed62d9c99b938bc-VIE"},{"key":"Content-Encoding","value":"br"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400, h3-29=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"SSH key has been deleted.\"\n}"}],"_postman_id":"a0419d35-a018-4c8c-b670-a977cd0d33d9"}],"id":"a8a87a8a-8ac0-4b6c-9665-c41ee09e15bb","description":"<p>Endpoints below allow you to manage SSH keys in Xelon HQ and its devices. The main parameter — <code>sshKeyId</code> — can be retrieved after creating a new SSH key or through the <code>GET</code> endpoint below.</p>\n","_postman_id":"a8a87a8a-8ac0-4b6c-9665-c41ee09e15bb","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"S3 Object Storage","item":[{"name":"Get Storage Plans","id":"9d90b402-69c0-4049-b2bc-5a545b410332","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/plans?tenantId=<TENANT_ID>","description":"<p>Use this endpoint to retrieve available object storage plans with their pricing and quota information.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","plans"],"host":["https://vdc.xelon.ch"],"query":[{"key":"tenantId","value":"<TENANT_ID>"}],"variable":[]}},"response":[{"id":"9c5fc14b-a2d6-4be2-83fa-a825cf966b7d","name":"Get Storage Plans","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/plans"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"quota\": 100,\n        \"title\": \"100 GB\",\n        \"price\": 4,\n        \"priceReplicated\": 8,\n        \"description\": \"Basic object storage plan with 100 GB of storage.\"\n    },\n    {\n        \"quota\": 250,\n        \"title\": \"250 GB\",\n        \"price\": 10,\n        \"priceReplicated\": 20,\n        \"description\": \"Object storage plan with 250 GB of storage.\"\n    },\n    {\n        \"quota\": 500,\n        \"title\": \"500 GB\",\n        \"price\": 20,\n        \"priceReplicated\": 40,\n        \"description\": \"Object storage plan with 500 GB of storage.\"\n    },\n    {\n        \"quota\": 1000,\n        \"title\": \"1 TB\",\n        \"price\": 40,\n        \"priceReplicated\": 80,\n        \"description\": \"Object storage plan with 1 TB of storage.\"\n    },\n    {\n        \"quota\": 2000,\n        \"title\": \"2 TB\",\n        \"price\": 80,\n        \"priceReplicated\": 160,\n        \"description\": \"Object storage plan with 2 TB of storage.\"\n    }\n]"}],"_postman_id":"9d90b402-69c0-4049-b2bc-5a545b410332"},{"name":"Get Zone Groups","id":"c57fb109-632a-4a8d-b2c6-0e978bd8839b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/zone-groups","description":"<p>Use this endpoint to retrieve available zone groups and their replication capabilities.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","zone-groups"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"19783c3f-21cf-4030-9a75-c828d82c5dee","name":"Get Zone Groups","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/zone-groups"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": \"zh1\",\n        \"name\": \"zh1\",\n        \"hasReplication\": false\n    },\n    {\n        \"id\": \"ch1\",\n        \"name\": \"ch1\",\n        \"hasReplication\": true\n    }\n]"}],"_postman_id":"c57fb109-632a-4a8d-b2c6-0e978bd8839b"},{"name":"Get S3 Users","id":"59d9ad47-5e8d-4a1a-9e66-6570ed93ac5b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/users?tenantId=<TENANT_ID>&page=1&perPage=15","description":"<p>Use this endpoint to retrieve a paginated list of all S3 users. You can optionally filter by tenant.</p>\n<p><strong>Query parameters</strong></p>\n<ul>\n<li><code>tenantId</code> (string, optional) - identifier of the tenant to filter by.</li>\n<li><code>page</code> (integer, optional) - page number.</li>\n<li><code>perPage</code> (integer, optional) - number of items per page.</li>\n</ul>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","users"],"host":["https://vdc.xelon.ch"],"query":[{"key":"tenantId","value":"<TENANT_ID>"},{"key":"page","value":"1"},{"key":"perPage","value":"15"}],"variable":[]}},"response":[{"id":"271cf38a-2223-41bb-83e4-882c1c0a4966","name":"Get S3 Users","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/users"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"identifier\": \"<S3_USER_IDENTIFIER>\",\n            \"name\": \"test-a1\",\n            \"quota\": 500,\n            \"ownerName\": \"Xelon AG\",\n            \"s3endpoints\": [\n                \"https://s3.example.com\"\n            ],\n            \"isReplicated\": false,\n            \"createdAt\": \"2025-10-27T14:19:56+01:00\",\n            \"sizeUsedGb\": 0,\n            \"numObjects\": null,\n            \"tokens\": [\n                {\n                    \"identifier\": \"<TOKEN_IDENTIFIER>\",\n                    \"accessKey\": \"54ZSX1PR0ZK8HOHZGXNE\",\n                    \"createdAt\": \"2025-10-27T14:19:56+01:00\"\n                }\n            ]\n        },\n        {\n            \"identifier\": \"<S3_USER_IDENTIFIER>\",\n            \"name\": \"Test Andrii Sabinich\",\n            \"quota\": 100,\n            \"ownerName\": \"Xelon AG\",\n            \"s3endpoints\": [\n                \"https://s3.example.com\"\n            ],\n            \"isReplicated\": false,\n            \"createdAt\": \"2025-10-28T10:15:32+01:00\",\n            \"sizeUsedGb\": 0,\n            \"numObjects\": null,\n            \"tokens\": []\n        }\n    ],\n    \"meta\": {\n        \"total\": 2,\n        \"lastPage\": 1,\n        \"perPage\": 15,\n        \"currentPage\": 1,\n        \"from\": 1,\n        \"to\": 2\n    }\n}"}],"_postman_id":"59d9ad47-5e8d-4a1a-9e66-6570ed93ac5b"},{"name":"Create S3 User","id":"68922125-434e-435d-ab5d-75e866076bc0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"name\": \"username\",\n    \"quota\": 500,\n    \"zoneGroup\": \"<ZONE_GROUP_ID>\",\n    \"tenantId\": \"<TENANT_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users","description":"<p>Use this endpoint to create a new S3 user. The response contains the user's first access key pair.</p>\n<p><strong>Body parameters</strong></p>\n<ul>\n<li><code>name</code> (string, required) - S3 user name, up to 255 characters.</li>\n<li><code>quota</code> (integer, required) - storage quota in GB, from 10 to 50000.</li>\n<li><code>zoneGroup</code> (string, required) - <code>id</code> of the zone group, as returned by <code>GET /object-storages/zone-groups</code>.</li>\n<li><code>tenantId</code> (string, optional) - identifier of the tenant that will own the user. Defaults to the tenant of the authenticated user.</li>\n</ul>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","users"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0d414a9e-d285-477c-8a51-108d7ef46c39","name":"Create S3 User","originalRequest":{"method":"POST","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/users"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"identifier\": \"<S3_USER_IDENTIFIER>\",\n    \"name\": \"username\",\n    \"createdAt\": \"2025-11-14T14:04:36+01:00\",\n    \"message\": \"S3 user successfully created\",\n    \"tokens\": [\n        {\n            \"accessKey\": \"498JAS1ZY3UV23453XYMJLUG9L\",\n            \"secretKey\": \"zCkbZftvnqkdfMUqgFpAxGfFyuBvudA2gggEWbzFk1f2ArDEt\",\n            \"createdAt\": \"2025-11-14T14:04:36+01:00\"\n        }\n    ]\n}"}],"_postman_id":"68922125-434e-435d-ab5d-75e866076bc0"},{"name":"Create S3 Access Key","id":"27dcfc5e-652b-4b6a-b579-5200388773a7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users/<S3_USER_ID>/tokens","description":"<p>Use this endpoint to create an additional access token for an existing S3 user.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","users","<S3_USER_ID>","tokens"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"30c19483-dd67-452e-9cec-3684c7aedf72","name":"Create S3 Access Key","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users/<S3_USER_ID>/tokens"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"accessKey\": \"K7A6F68E23X42sQ8M5XHZYFFVFF7Y\",\n    \"secretKey\": \"Ivx1HrJddQjDNwspiv2HYDvqxyXs23L6E4NdhBhXVzzmYJr6h\",\n    \"createdAt\": \"2025-11-14T14:07:28+01:00\",\n    \"message\": \"S3 user token successfully created\"\n}"}],"_postman_id":"27dcfc5e-652b-4b6a-b579-5200388773a7"},{"name":"Delete S3 User Token","id":"5481635e-cff8-4a3c-b527-6cb9ca983984","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users/<S3_USER_ID>/tokens/<TOKEN_ID>","description":"<p>Use this endpoint to delete a specific access token for an S3 user.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","users","<S3_USER_ID>","tokens","<TOKEN_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"82f8562a-7c81-4aa3-8852-0427c405a9b9","name":"Delete S3 User Token","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users/<S3_USER_ID>/tokens/<TOKEN_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n  \"message\": \"Token successfully deleted\"\n}"}],"_postman_id":"5481635e-cff8-4a3c-b527-6cb9ca983984"},{"name":"Edit S3 User","id":"96c768d3-3579-416c-b9ee-29a117523cce","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"name\": \"new_username\",\n    \"quota\": 500\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users/<S3_USER_IDENTIFIER>","description":"<p>Use this endpoint to adjust an existing S3 user's name and quota.</p>\n<p><strong>Body parameters</strong></p>\n<ul>\n<li><code>name</code> (string, required) - S3 user name, up to 255 characters.</li>\n<li><code>quota</code> (integer, required) - storage quota in GB, from 10 to 50000. The quota cannot be lower than the amount already stored by the S3 user.</li>\n</ul>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","users","<S3_USER_IDENTIFIER>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"3137e164-e57f-4e48-b764-87788520dbda","name":"Edit S3 User","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"name\":\"new_username\",\n    \"quota\":250,\n    \"zoneGroup\":\"<ZONE_GROUP_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users/<S3_USER_IDENTIFIER>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"identifier\": \"<S3_USER_IDENTIFIER>\",\n    \"name\": \"new_username\",\n    \"createdAt\": \"2025-11-14T14:04:36+01:00\",\n    \"message\": \"S3 user successfully edited\"\n}"}],"_postman_id":"96c768d3-3579-416c-b9ee-29a117523cce"},{"name":"Delete S3 User","id":"fe3dca70-6874-4a2a-98b2-517f45f92c80","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users/<S3_USER_ID>","description":"<p>Use this endpoint to permanently delete an S3 user and all associated tokens.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","users","<S3_USER_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"5e503787-fc07-41cd-9225-9365c78beef7","name":"Delete S3 User","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/users/<S3_USER_ID>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"S3 User successfully deleted\"\n}"}],"_postman_id":"fe3dca70-6874-4a2a-98b2-517f45f92c80"},{"name":"Get List of All Buckets","id":"150ebe30-5ab1-4c88-b905-e246d598b6b9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/buckets?tenantId=<TENANT_ID>&page=1&perPage=15","description":"<p>Use this endpoint to retrieve a list of all S3 buckets. You can optionally filter by tenant</p>\n<h3 id=\"additional-parameters\">Additional parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>tenantId</code></td>\n<td>(optional) Identifier of the organization whose buckets should be listed.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","buckets"],"host":["https://vdc.xelon.ch"],"query":[{"key":"tenantId","value":"<TENANT_ID>"},{"key":"page","value":"1"},{"key":"perPage","value":"15"}],"variable":[]}},"response":[{"id":"38233602-d340-4ad4-954f-74e4e49b598f","name":"Get List of All Buckets","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/buckets"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": \"2303e55d-fa12-46bb-aa33-443211848371.373252.4\",\n        \"name\": \"test343535\",\n        \"s3UserId\": 15,\n        \"s3UserName\": \"test-a1\",\n        \"zoneGroup\": \"zh1\",\n        \"isReplicated\": false,\n        \"isObjectLock\": false,\n        \"createdAt\": \"2025-11-11T12:06:25+00:00\",\n        \"s3UserIdentifier\": \"<S3_USER_IDENTIFIER>\",\n        \"versioningStatus\": \"done\",\n        \"isVersioning\": false,\n        \"retentionPeriodDays\": null,\n        \"s3endpoints\": [\n            \"https://s3.example.com\"\n        ],\n        \"isWithRestrictedIps\": false\n    }\n]"}],"_postman_id":"150ebe30-5ab1-4c88-b905-e246d598b6b9"},{"name":"Create Bucket","id":"2702614a-4e94-4892-83ea-b8278224e122","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"name\": \"mynewbucket\",\n    \"s3UserIdentifier\": \"<S3_USER_IDENTIFIER>\",\n    \"isObjectLock\": true,\n    \"isVersioning\": true,\n    \"retentionPeriodDays\": 10\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/buckets","description":"<p>Use this endpoint to create a new S3 bucket. Bucket creation is asynchronous and may take some time to complete.</p>\n<p><strong>Body parameters</strong></p>\n<ul>\n<li><code>name</code> (string, required) - bucket name: 3-63 characters, lowercase letters, digits and hyphens only; must start and end with a letter or digit; must not start with <code>xn--</code>, end with <code>-s3alias</code> or look like an IP address.</li>\n<li><code>s3UserIdentifier</code> (string, required) - UUID of the S3 user that will own the bucket.</li>\n<li><code>isObjectLock</code> (boolean, required) - enable Object Lock. Cannot be changed after creation.</li>\n<li><code>isVersioning</code> (boolean, required) - enable versioning. Must be <code>true</code> when <code>isObjectLock</code> is <code>true</code>.</li>\n<li><code>retentionPeriodDays</code> (integer, required if <code>isObjectLock</code> is <code>true</code>, otherwise <code>null</code>) - default retention period in days (minimum 1).</li>\n</ul>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","buckets"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"dcbceb69-cf07-4f6f-8211-0870aa842b51","name":"Create Bucket","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"name\": \"mynewbucket\",\n    \"s3UserIdentifier\": \"<S3_USER_IDENTIFIER>\",\n    \"isObjectLock\": true,\n    \"isVersioning\": true,\n    \"retentionPeriodDays\": 10\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/buckets"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Bucket will be created shortly\"\n}"}],"_postman_id":"2702614a-4e94-4892-83ea-b8278224e122"},{"name":"Delete Bucket","id":"a48a4563-fb43-4cd5-8cc3-60af58a7a4e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/buckets/<BUCKET_NAME>/<S3_USER_IDENTIFIER>","description":"<p>Use this endpoint to permanently delete an S3 bucket. The bucket must be empty before deletion.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","buckets","<BUCKET_NAME>","<S3_USER_IDENTIFIER>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"e745db47-2717-419a-9a3b-f4ab978cde0d","name":"Delete Bucket","originalRequest":{"method":"DELETE","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/object-storages/buckets/<BUCKET_NAME>/<S3_USER_IDENTIFIER>"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Bucket successfully deleted\"\n}"}],"_postman_id":"a48a4563-fb43-4cd5-8cc3-60af58a7a4e2"},{"name":"Current S3 plans","id":"7a2bf1b3-b5d7-4244-847f-365f3ca00452","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/object-storages/current-plans","description":"<p>Use this endpoint to get the organization's current S3 Object Storage plans.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","object-storages","current-plans"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[],"_postman_id":"7a2bf1b3-b5d7-4244-847f-365f3ca00452"}],"id":"8099e980-de43-4f98-825b-fe38e4862068","description":"<p>Xelon's Object Storage service provides S3-compatible storage infrastructure for your applications. The architecture is built around several key concepts:</p>\n<p><strong>S3 Users</strong> are the primary access entities. Each S3 user has a quota (storage limit) and can own multiple buckets. Users are created within zone groups and can have multiple access tokens (access key/secret key pairs) for different applications or environments.</p>\n<p><strong>Zone Groups</strong> are geographical regions where your data is stored. Some zone groups support replication for high availability (e.g., \"ch1\"), while others are single-zone (e.g., \"zh1\"). Choose replicated zones for production workloads requiring redundancy.</p>\n<p><strong>Buckets</strong> are containers for your objects (files). Each bucket belongs to a single S3 user and inherits the user's zone group. Buckets can optionally have Object Lock enabled for compliance requirements.</p>\n<p><strong>Access Tokens</strong> are the credential pairs (access key + secret key) used to authenticate API calls to your buckets. Each S3 user can have multiple tokens, allowing you to rotate credentials or provide access to different services.</p>\n<h3 id=\"getting-started\">Getting started</h3>\n<ol>\n<li><p><strong>Check available plans</strong> using <code>GET /api/service/object-storages/plans</code> to see quota options and pricing</p>\n</li>\n<li><p><strong>List zone groups</strong> using <code>GET /api/service/object-storages/zone-groups</code> to choose your region</p>\n</li>\n<li><p><strong>Create an S3 user</strong> using <code>POST /api/service/object-storages/users</code> with your desired quota and zone group</p>\n</li>\n<li><p><strong>Save the credentials</strong> from the response - you'll receive an access key and secret key</p>\n</li>\n<li><p><strong>Create a bucket</strong> using <code>POST /api/service/object-storages/buckets</code> with your S3 user ID</p>\n</li>\n<li><p><strong>Configure your S3 client</strong> with the credentials and start uploading objects</p>\n</li>\n</ol>\n<h3 id=\"how-do-i-find-my-bucket-id\">How do I find my bucket ID?</h3>\n<p>Bucket IDs are returned when you list buckets using <code>GET /api/service/object-storages/buckets</code>. The ID is a UUID-based string like <code>\"2303e55d-fa12-46bb-aa33-443211848371.373252.4\"</code>.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\">curl --location 'https://vdc.xelon.ch/api/service/object-storages/buckets' \\\n--header 'Content-Type: application/json'\n\n</code></pre>\n<p>The response includes all your buckets with their IDs, names, and associated S3 users.</p>\n<h3 id=\"how-do-i-get-my-s3-user-id\">How do I get my S3 user ID?</h3>\n<p>List all S3 users with <code>GET /api/service/object-storages/users</code>. The response includes the numeric <code>id</code> field for each user:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\">curl --location 'https://vdc.xelon.ch/api/service/object-storages/users' \\\n--header 'Content-Type: application/json'\n\n</code></pre>\n<p>You can also filter by tenant if you manage multiple organizations by adding <code>?tenantId=</code> to the URL.</p>\n<h3 id=\"how-do-i-retrieve-my-access-keys\">How do I retrieve my access keys?</h3>\n<p>When you create an S3 user, the initial access key and secret key are returned in the response. <strong>Important:</strong> The secret key is only shown once during creation - store it securely.</p>\n<p>To see existing access keys (without secrets), use <code>GET /api/service/object-storages/users</code>. The response includes a <code>tokens</code> array with <code>accessKey</code> and <code>id</code> for each token, but not the secret keys.</p>\n<p>If you lose a secret key, delete the old token and create a new one using <code>POST /api/service/object-storages/users/{s3UserId}/tokens</code>.</p>\n<h3 id=\"how-do-i-rotate-credentials\">How do I rotate credentials?</h3>\n<p>Best practice for credential rotation:</p>\n<ol>\n<li><p><strong>Create a new token</strong> using <code>POST /api/service/object-storages/users/{s3UserId}/tokens</code></p>\n</li>\n<li><p><strong>Update your applications</strong> with the new access key and secret key</p>\n</li>\n<li><p><strong>Test the new credentials</strong> thoroughly</p>\n</li>\n<li><p><strong>Delete the old token</strong> using <code>DELETE /api/service/object-storages/users/{s3UserId}/tokens/{tokenId}</code></p>\n</li>\n</ol>\n<p>You can have multiple active tokens during the rotation period, allowing zero-downtime updates.</p>\n<h3 id=\"can-i-change-an-s3-users-quota\">Can I change an S3 user's quota?</h3>\n<p>Yes, use <code>PUT /api/service/object-storages/users</code> to update the quota. You can also change the user's name in the same request. Available quotas are: 100, 250, 500, 1000, or 2000 GB.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\">curl --location --request PUT 'https://vdc.xelon.ch/api/service/object-storages/users' \\\n--header 'Content-Type: application/json' \\\n--data '{\n  \"name\": \"production-storage\",\n  \"quota\": 1000\n}'\n\n</code></pre>\n<h3 id=\"what-happens-when-i-delete-an-s3-user\">What happens when I delete an S3 user?</h3>\n<p>Deleting an S3 user removes:</p>\n<ul>\n<li><p>The user account</p>\n</li>\n<li><p>All associated access tokens</p>\n</li>\n<li><p>Access to all buckets owned by that user</p>\n</li>\n</ul>\n<blockquote>\n<p><strong>Warning:</strong> The buckets themselves are NOT automatically deleted. You should delete buckets separately before removing the user, or they may become orphaned. </p>\n</blockquote>\n<h3 id=\"how-do-i-implement-object-lock-for-compliance\">How do I implement Object Lock for compliance?</h3>\n<p>Object Lock prevents objects from being deleted or overwritten for a specified retention period. To use it:</p>\n<ol>\n<li><p><strong>Enable during bucket creation</strong> by setting <code>isObjectLock: true</code></p>\n</li>\n<li><p><strong>Set retention period</strong> using <code>retentionPeriodDays</code> (e.g., 365 for one year)</p>\n</li>\n<li><p><strong>Use WORM (Write-Once-Read-Many)</strong> semantics in your application</p>\n</li>\n</ol>\n<blockquote>\n<p>Once enabled, Object Lock cannot be disabled. Plan your retention policy carefully before creating the bucket. </p>\n</blockquote>\n<h3 id=\"how-do-i-filter-results-by-tenant\">How do I filter results by tenant?</h3>\n<p>If you manage multiple tenants/organizations, add the <code>tenantId</code> query parameter:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\"># List S3 users for a specific tenant\ncurl --location 'https://vdc.xelon.ch/api/service/object-storages/users?tenantId=123' \\\n--header 'Content-Type: application/json'\n# List buckets for a specific tenant\ncurl --location 'https://vdc.xelon.ch/api/service/object-storages/buckets?tenantId=123' \\\n--header 'Content-Type: application/json'\n\n</code></pre>\n<p>Omit the parameter (or set to <code>null</code>) to see resources across all tenants you have access to.</p>\n<h3 id=\"why-is-bucket-creation-asynchronous\">Why is bucket creation asynchronous?</h3>\n<p>Bucket creation returns <code>\"Bucket will be created shortly\"</code> because the process involves:</p>\n<ul>\n<li><p>Provisioning storage resources</p>\n</li>\n<li><p>Configuring replication (if applicable)</p>\n</li>\n<li><p>Setting up Object Lock policies (if enabled)</p>\n</li>\n</ul>\n<p>This typically completes within seconds, but may take longer for replicated buckets. Poll <code>GET /api/service/object-storages/buckets</code> to check when your bucket appears.</p>\n<h3 id=\"can-i-delete-a-bucket-with-objects-in-it\">Can I delete a bucket with objects in it?</h3>\n<p>No, buckets must be empty before deletion. Use your S3 client to delete all objects first:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\"># Example using AWS CLI\naws s3 rm s3://your-bucket-name --recursive --endpoint-url https://your-endpoint\n# Then delete via API\ncurl --location --request DELETE 'https://vdc.xelon.ch/api/service/object-storages/buckets/{bucketId}' \\\n--header 'Content-Type: application/json'\n\n</code></pre>\n<h3 id=\"how-do-i-configure-my-s3-client\">How do I configure my S3 client?</h3>\n<p>After creating an S3 user and bucket, configure your client (AWS CLI, SDK, etc.) with:</p>\n<ul>\n<li><p><strong>Access Key ID</strong>: From the <code>accessKey</code> field in API responses</p>\n</li>\n<li><p><strong>Secret Access Key</strong>: From the <code>secretKey</code> field (only shown during token creation)</p>\n</li>\n<li><p><strong>Endpoint URL</strong>: Your Xelon S3 endpoint (contact support for the specific URL)</p>\n</li>\n<li><p><strong>Region</strong>: Typically matches your zone group (e.g., \"zh1\", \"ch1\")</p>\n</li>\n</ul>\n<p>Example AWS CLI configuration:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\">aws configure set aws_access_key_id YOUR_ACCESS_KEY\naws configure set aws_secret_access_key YOUR_SECRET_KEY\naws configure set region zh1\n# Use with --endpoint-url flag\naws s3 ls --endpoint-url https://your-s3-endpoint.xelon.ch\n\n</code></pre>\n<h3 id=\"how-do-i-monitor-storage-usage\">How do I monitor storage usage?</h3>\n<p>Use <code>GET /api/service/object-storages/users</code> to check usage metrics:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"id\": 15,\n  \"name\": \"production-storage\",\n  \"quota\": 500,\n  \"sizeUsedGb\": 342,\n  \"numObjects\": 15847,\n  ...\n}\n\n</code></pre>\n<ul>\n<li><p><strong>sizeUsedGb</strong>: Current storage consumption in gigabytes</p>\n</li>\n<li><p><strong>numObjects</strong>: Total number of objects stored</p>\n</li>\n<li><p><strong>quota</strong>: Your storage limit in gigabytes</p>\n</li>\n</ul>\n<p>Set up automated monitoring by polling this endpoint and alerting when <code>sizeUsedGb</code> approaches <code>quota</code>.</p>\n<h3 id=\"can-i-move-a-bucket-to-a-different-s3-user\">Can I move a bucket to a different S3 user?</h3>\n<p>No, buckets are permanently associated with the S3 user who created them. To transfer data:</p>\n<ol>\n<li><p>Create a new S3 user (if needed)</p>\n</li>\n<li><p>Create a new bucket under the target user</p>\n</li>\n<li><p>Copy objects from the old bucket to the new bucket</p>\n</li>\n<li><p>Delete the old bucket</p>\n</li>\n</ol>\n<p>Use S3 sync tools or scripts for efficient bulk transfers.</p>\n<h3 id=\"whats-the-difference-between-s3userid-and-s3username-in-bucket-responses\">What's the difference between <code>s3UserId</code> and <code>s3UserName</code> in bucket responses?</h3>\n<ul>\n<li><p><strong>s3UserId</strong>: Numeric identifier used in API calls (e.g., <code>15</code>)</p>\n</li>\n<li><p><strong>s3UserName</strong>: Human-readable name for display purposes (e.g., <code>\"production-storage\"</code>)</p>\n</li>\n</ul>\n<p>Always use <code>s3UserId</code> when making API requests. The <code>s3UserName</code> is provided for convenience in UIs and logging.</p>\n","_postman_id":"8099e980-de43-4f98-825b-fe38e4862068","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}},{"name":"Web Application Firewalls","item":[{"name":"Create Web Application Firewall","id":"09bf554c-f8c3-497d-a188-16be34097249","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"cloudId\": \"<CLOUD_ID>\",\n    \"type\": 2,\n    \"name\": \"<NAME>\",\n    \"server_id\": [],\n    \"internal_network_id\": 1798,\n    \"ip\": \"13.13.13.13\",\n    \"forwarding_rules\": [\n        {\n            \"ip\": [\n                \"10.0.0.30:80\"\n            ],\n            \"ssl_certificate\": null,\n            \"url\": \"https://xelon.ch\",\n            \"ssl_autogenerate\": false,\n            \"owasp_security_rules\": [],\n            \"maintenance_mode\": false\n        }\n    ],\n    \"external_network_id\": \"<EXTERNAL_NETWORK_ID>\",\n    \"external_ip_id\": \"<EXTERNAL_IP_ID>\",\n    \"internal_ip_id\": \"<INTERNAL_IP_ID>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/waf","description":"<p>Use this endpoint to create a new Web Application Firewall (WAF) for an organization.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>cloudId</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>type</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>name</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>server_id</code></td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>internal_network_id</code></td>\n<td><em>number</em></td>\n</tr>\n<tr>\n<td><code>ip</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>forwarding_rules</code></td>\n<td><em>array</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","waf"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"f2b9f0f1-4891-40b4-a62b-fc5c6db001eb","name":"Create Web Application Firewall","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"cloudId\": \"<CLOUD_ID>\",\n    \"type\": 2,\n    \"name\": \"<NAME>\",\n    \"server_id\": [],\n    \"internal_network_id\": 1798,\n    \"ip\": \"13.13.13.13\",\n    \"forwarding_rules\": [\n        {\n            \"ip\": [\n                \"10.0.0.30:80\"\n            ],\n            \"ssl_certificate\": null,\n            \"url\": \"https://xelon.ch\",\n            \"ssl_autogenerate\": false,\n            \"owasp_security_rules\": [],\n            \"maintenance_mode\": false\n        }\n    ]\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/waf","description":"Use this endpoint to create a new Web Application Firewall (WAF) for an organization.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `cloudId` | _string_ |\n| `type` | _number_ |\n| `name` | _string_ |\n| `server_id` | _array_ |\n| `internal_network_id` | _number_ |\n| `ip` | _string_ |\n| `forwarding_rules` | _array_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"webApplicationFirewall\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"forwarding_rules\": [\n            {\n                \"created_at\": \"2026-01-01T12:00:00+01:00\",\n                \"generate_www_letsencrypt\": 1,\n                \"id\": 1,\n                \"ip\": [],\n                \"maintenance_mode\": false,\n                \"owasp_security_rules\": null,\n                \"ssl_autogenerate\": false,\n                \"ssl_backend\": 1,\n                \"ssl_certificate\": null,\n                \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n                \"url\": \"<URL>\",\n                \"waf_id\": 1\n            }\n        ],\n        \"hv_system_id\": 1,\n        \"hv_type\": \"<HV_TYPE>\",\n        \"id\": 1,\n        \"local_id\": \"<LOCAL_ID>\",\n        \"name\": \"<NAME>\",\n        \"network_id\": 1,\n        \"tenant\": {},\n        \"tenant_id\": 1,\n        \"type\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"virtual_machine_id\": 1\n    },\n    \"message\": \"<MESSAGE>\"\n}"}],"_postman_id":"09bf554c-f8c3-497d-a188-16be34097249"},{"name":"Web Application Firewall info","id":"386944d7-4975-4e4f-a5f6-2b9000491698","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/waf/<WAF_ID>","description":"<p>Use this endpoint to get detailed information about a Web Application Firewall.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","waf","<WAF_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"98585905-9edf-493c-88ac-23f3e18e2728","name":"Web Application Firewall info","originalRequest":{"method":"GET","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/waf/<WAF_ID>","description":"Use this endpoint to get detailed information about a Web Application Firewall."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"assigned_servers\": [],\n    \"created_at\": \"2026-01-01T12:00:00+01:00\",\n    \"creator\": \"<CREATOR>\",\n    \"deleted_at\": null,\n    \"forwarding_rules\": [\n        {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"generate_www_letsencrypt\": 1,\n            \"id\": 1,\n            \"ip\": [],\n            \"maintenance_mode\": false,\n            \"owasp_security_rules\": null,\n            \"ssl_autogenerate\": false,\n            \"ssl_backend\": 1,\n            \"ssl_certificate\": null,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"url\": \"<URL>\",\n            \"waf_id\": 1\n        }\n    ],\n    \"health\": \"<HEALTH>\",\n    \"hv_system_id\": 1,\n    \"hv_type\": \"<HV_TYPE>\",\n    \"id\": 1,\n    \"internalIp\": \"<INTERNAL_IP>\",\n    \"ip\": \"<IP>\",\n    \"local_id\": \"<LOCAL_ID>\",\n    \"name\": \"<NAME>\",\n    \"network_id\": 1,\n    \"owner\": \"<OWNER>\",\n    \"tenant\": {\n        \"account_manager\": null,\n        \"active\": false,\n        \"address\": \"<ADDRESS>\",\n        \"address2\": \"<ADDRESS2>\",\n        \"allow_bank_transfer\": false,\n        \"allow_trial_creation\": false,\n        \"billing_frequency\": \"<BILLING_FREQUENCY>\",\n        \"billingplan\": 1,\n        \"city\": \"<CITY>\",\n        \"country\": \"<COUNTRY>\",\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"credits_code_id\": null,\n        \"currency_id\": null,\n        \"customer_id\": null,\n        \"customer_type\": null,\n        \"deactivation_date\": null,\n        \"deleted_at\": null,\n        \"demo\": false,\n        \"demo_end\": null,\n        \"demo_start\": null,\n        \"discount\": null,\n        \"financeemail\": [],\n        \"fixed_recurring\": 1,\n        \"fraud_risk_score\": 1,\n        \"hs_object_id\": null,\n        \"invoice_type\": \"<INVOICE_TYPE>\",\n        \"minimum_recurring\": 1,\n        \"otp_type\": null,\n        \"paid\": 1,\n        \"parent_identifier\": \"<PARENT_IDENTIFIER>\",\n        \"phone\": \"<PHONE>\",\n        \"postcode\": \"<POSTCODE>\",\n        \"report_frequency\": \"<REPORT_FREQUENCY>\",\n        \"requested\": null,\n        \"resource_pool\": null,\n        \"status\": 1,\n        \"supportemail\": \"<EMAIL>\",\n        \"tax_id\": 1,\n        \"taxed\": 1,\n        \"tenant_identifier\": \"<TENANT_IDENTIFIER>\",\n        \"tenantname\": \"<TENANTNAME>\",\n        \"trial\": false,\n        \"trial_end\": null,\n        \"trial_start\": null,\n        \"type\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"upgrade_modal_active\": 1,\n        \"vat\": null,\n        \"withhold_invoices\": 1,\n        \"'2factor'\": 1\n    },\n    \"tenant_id\": 1,\n    \"type\": \"<TYPE>\",\n    \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n    \"virtual_machine\": {\n        \"created_at\": \"2026-01-01T12:00:00+01:00\",\n        \"deleted_at\": null,\n        \"hv_system\": {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"display_name\": \"<DISPLAY_NAME>\",\n            \"display_short_name\": \"<DISPLAY_SHORT_NAME>\",\n            \"hv_type\": \"<HV_TYPE>\",\n            \"id\": 1,\n            \"main_cloud\": 1,\n            \"type\": 1,\n            \"version\": 1\n        },\n        \"hv_system_id\": 1,\n        \"hv_type\": \"<HV_TYPE>\",\n        \"is_restoring\": null,\n        \"iso_mounted\": null,\n        \"localvmid\": \"<LOCALVMID>\",\n        \"monitoring\": 1,\n        \"notes\": null,\n        \"service_cluster_type\": null,\n        \"service_id\": 1,\n        \"serviceuser_lastchecked\": null,\n        \"serviceuser_status\": 1,\n        \"state\": 1,\n        \"template_id\": 1,\n        \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n        \"user_id\": 1,\n        \"vdc_service_type\": 1,\n        \"vmdisplayname\": \"<VMDISPLAYNAME>\",\n        \"vmhostname\": \"<VMHOSTNAME>\"\n    },\n    \"virtual_machine_id\": 1\n}"}],"_postman_id":"386944d7-4975-4e4f-a5f6-2b9000491698"},{"name":"Update Web Application Firewall","id":"2b772754-3450-404a-85d0-7a4335497b23","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"name\": \"name\",\n    \"value\": \"<VALUE>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/waf/<WAF_ID>","description":"<p>Use this endpoint to update the settings of a Web Application Firewall.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>name</code></td>\n<td><em>string</em></td>\n</tr>\n<tr>\n<td><code>value</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","waf","<WAF_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"84b944b3-ba05-41b2-94dc-9add57b6ded1","name":"Update Web Application Firewall","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"name\": \"name\",\n    \"value\": \"<VALUE>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/waf/<WAF_ID>","description":"Use this endpoint to update the settings of a Web Application Firewall.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `name` | _string_ |\n| `value` | _string_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"<MESSAGE>\"\n}"}],"_postman_id":"2b772754-3450-404a-85d0-7a4335497b23"},{"name":"Create WAF forwarding rule","id":"847c4194-67df-4982-a80b-a466b18e7e14","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"generate_www_letsencrypt\": false,\n    \"ip\": [\n        \"10.0.0.5:80\"\n    ],\n    \"maintenance_mode\": false,\n    \"owasp_security_rules\": [],\n    \"ssl_autogenerate\": false,\n    \"ssl_backend\": false,\n    \"ssl_certificate\": null,\n    \"url\": \"https://google.com\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/waf/<WAF_ID>/forwardingRule","description":"<p>Use this endpoint to create a forwarding rule for a Web Application Firewall.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>generate_www_letsencrypt</code></td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>ip</code></td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>maintenance_mode</code></td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>owasp_security_rules</code></td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>ssl_autogenerate</code></td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>ssl_backend</code></td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>ssl_certificate</code></td>\n<td><em>null</em></td>\n</tr>\n<tr>\n<td><code>url</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","waf","<WAF_ID>","forwardingRule"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"a49af25c-bca0-4af8-b94e-aba2d1aacb26","name":"Create WAF forwarding rule","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\n    \"generate_www_letsencrypt\": false,\n    \"ip\": [\n        \"10.0.0.5:80\"\n    ],\n    \"maintenance_mode\": false,\n    \"owasp_security_rules\": [],\n    \"ssl_autogenerate\": false,\n    \"ssl_backend\": false,\n    \"ssl_certificate\": null,\n    \"url\": \"https://google.com\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/waf/<WAF_ID>/forwardingRule","description":"Use this endpoint to create a forwarding rule for a Web Application Firewall.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `generate_www_letsencrypt` | _boolean_ |\n| `ip` | _array_ |\n| `maintenance_mode` | _boolean_ |\n| `owasp_security_rules` | _array_ |\n| `ssl_autogenerate` | _boolean_ |\n| `ssl_backend` | _boolean_ |\n| `ssl_certificate` | _null_ |\n| `url` | _string_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"created_at\": \"2026-01-01T12:00:00+01:00\",\n    \"generate_www_letsencrypt\": false,\n    \"id\": 1,\n    \"ip\": [],\n    \"maintenance_mode\": false,\n    \"owasp_security_rules\": null,\n    \"ssl_autogenerate\": false,\n    \"ssl_backend\": false,\n    \"ssl_certificate\": null,\n    \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n    \"url\": \"<URL>\",\n    \"waf_id\": 1,\n    \"web_application_firewall\": {}\n}"}],"_postman_id":"847c4194-67df-4982-a80b-a466b18e7e14"},{"name":"Update WAF forwarding rule","id":"c565e8bd-1ced-4a78-bbe1-e73857a67807","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"generate_www_letsencrypt\": false,\n    \"ip\": [\n        \"10.0.0.6:80\"\n    ],\n    \"maintenance_mode\": false,\n    \"owasp_security_rules\": [],\n    \"ssl_autogenerate\": false,\n    \"ssl_backend\": false,\n    \"ssl_certificate\": null,\n    \"url\": \"https://habr.com\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/waf/<WAF_ID>/forwardingRule/<FORWARDING_RULE_ID>","description":"<p>Use this endpoint to update a forwarding rule of a Web Application Firewall.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>generate_www_letsencrypt</code></td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>ip</code></td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>maintenance_mode</code></td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>owasp_security_rules</code></td>\n<td><em>array</em></td>\n</tr>\n<tr>\n<td><code>ssl_autogenerate</code></td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>ssl_backend</code></td>\n<td><em>boolean</em></td>\n</tr>\n<tr>\n<td><code>ssl_certificate</code></td>\n<td><em>null</em></td>\n</tr>\n<tr>\n<td><code>url</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","waf","<WAF_ID>","forwardingRule","<FORWARDING_RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"f92a5104-a925-4ae5-a1ae-4f5c378d5b77","name":"Update WAF forwarding rule","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\n    \"generate_www_letsencrypt\": false,\n    \"ip\": [\n        \"10.0.0.6:80\"\n    ],\n    \"maintenance_mode\": false,\n    \"owasp_security_rules\": [],\n    \"ssl_autogenerate\": false,\n    \"ssl_backend\": false,\n    \"ssl_certificate\": null,\n    \"url\": \"https://habr.com\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/waf/<WAF_ID>/forwardingRule/<FORWARDING_RULE_ID>","description":"Use this endpoint to update a forwarding rule of a Web Application Firewall.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `generate_www_letsencrypt` | _boolean_ |\n| `ip` | _array_ |\n| `maintenance_mode` | _boolean_ |\n| `owasp_security_rules` | _array_ |\n| `ssl_autogenerate` | _boolean_ |\n| `ssl_backend` | _boolean_ |\n| `ssl_certificate` | _null_ |\n| `url` | _string_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"forwardingRules\": [\n        {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"generate_www_letsencrypt\": 1,\n            \"id\": 1,\n            \"ip\": [],\n            \"maintenance_mode\": false,\n            \"owasp_security_rules\": null,\n            \"ssl_autogenerate\": false,\n            \"ssl_backend\": 1,\n            \"ssl_certificate\": null,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"url\": \"<URL>\",\n            \"waf_id\": 1\n        }\n    ],\n    \"message\": \"<MESSAGE>\"\n}"}],"_postman_id":"c565e8bd-1ced-4a78-bbe1-e73857a67807"},{"name":"Delete WAF forwarding rule","id":"2b700cc1-f75d-4206-8fa5-3601e95c31d2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/waf/<WAF_ID>/forwardingRule/<FORWARDING_RULE_ID>","description":"<p>Use this endpoint to delete a forwarding rule of a Web Application Firewall.</p>\n","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","<TENANT_ID>","waf","<WAF_ID>","forwardingRule","<FORWARDING_RULE_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"0a405742-829b-49dd-8af3-d63179e0645c","name":"Delete WAF forwarding rule","originalRequest":{"method":"DELETE","header":[],"url":"https://vdc.xelon.ch/api/service/<TENANT_ID>/waf/<WAF_ID>/forwardingRule/<FORWARDING_RULE_ID>","description":"Use this endpoint to delete a forwarding rule of a Web Application Firewall."},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"forwardingRules\": [\n        {\n            \"created_at\": \"2026-01-01T12:00:00+01:00\",\n            \"generate_www_letsencrypt\": 1,\n            \"id\": 1,\n            \"ip\": [],\n            \"maintenance_mode\": false,\n            \"owasp_security_rules\": null,\n            \"ssl_autogenerate\": false,\n            \"ssl_backend\": 1,\n            \"ssl_certificate\": null,\n            \"updated_at\": \"2026-01-01T12:00:00+01:00\",\n            \"url\": \"<URL>\",\n            \"waf_id\": 1\n        }\n    ],\n    \"message\": \"<MESSAGE>\"\n}"}],"_postman_id":"2b700cc1-f75d-4206-8fa5-3601e95c31d2"},{"name":"Delete Web Application Firewall","id":"aa8537a1-3e6a-4311-b0b5-5072aefb60cc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/waf/<WAF_ID>","description":"<p>Use this endpoint to delete a Web Application Firewall.</p>\n<h3 id=\"request-body\">Request body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>password</code></td>\n<td><em>string</em></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}},"urlObject":{"path":["api","service","waf","<WAF_ID>"],"host":["https://vdc.xelon.ch"],"query":[],"variable":[]}},"response":[{"id":"a77ab9b9-b8a9-4fe8-b013-5dfbf3088e4e","name":"Delete Web Application Firewall","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\n    \"password\": \"<PASSWORD>\"\n}","options":{"raw":{"language":"json"}}},"url":"https://vdc.xelon.ch/api/service/waf/<WAF_ID>","description":"Use this endpoint to delete a Web Application Firewall.\n\n### Request body\n\n| **Parameter** | **Type** |\n| --- | --- |\n| `password` | _string_ |"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"<MESSAGE>\"\n}"}],"_postman_id":"aa8537a1-3e6a-4311-b0b5-5072aefb60cc"}],"id":"486c904d-067d-4400-808a-fa124d55b78d","_postman_id":"486c904d-067d-4400-808a-fa124d55b78d","description":"","auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]},"isInherited":true,"source":{"_postman_id":"710347c3-a519-4b3c-905b-23a68604083e","id":"710347c3-a519-4b3c-905b-23a68604083e","name":"Xelon HQ Public API Documentation","type":"collection"}}}],"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<TOKEN>"}]}},"event":[{"listen":"prerequest","script":{"id":"2c5a7efc-4da9-4524-853e-783ebfb6cf27","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"da8646df-d349-4224-8b36-eefe26d2bb4e","type":"text/javascript","exec":[""]}}],"variable":[{"key":"DOMAIN","value":"https://vdc.xelon.ch"},{"key":"TOKEN","value":"<TOKEN>"},{"key":"EMAIL","value":"<EMAIL>"},{"key":"PASSWORD","value":"<PASSWORD>"},{"key":"TENANT_ID","value":"<TENANT_ID>","type":"string"},{"key":"VM_ID","value":"<VM_ID>","type":"string"},{"key":"LOCALVMID","value":"localvmid","disabled":true},{"key":"FIREWALL_ID","value":"<FIREWALL_ID>","type":"string"},{"key":"CLUSTER_ID","value":"<CLUSTER_ID>","type":"string"},{"key":"OLD_TENANT","value":"75c7cf02b782","type":"string","disabled":true},{"key":"LOCAL_ID","value":"<LOCAL_ID>","type":"string"},{"key":"USER_ID","value":"<USER_ID>","type":"string"},{"key":"TEMPLATE_ID","value":"<TEMPLATE_ID>","type":"string"},{"key":"RULE_ID","value":"<RULE_ID>","type":"string"},{"key":"NETWORK_ID","value":"<NETWORK_ID>","type":"string"},{"key":"SNAPSHOT_ID","value":"<SNAPSHOT_ID>","type":"string"},{"key":"PERIOD","value":"<PERIOD>","type":"string"},{"key":"PARAM","value":"<PARAM>","type":"string"},{"key":"WAF_ID","value":"<WAF_ID>","type":"string"},{"key":"FORWARDING_RULE_ID","value":"<FORWARDING_RULE_ID>","type":"string"},{"key":"RECORD_ID","value":"<RECORD_ID>","type":"string"}]}