Skip to content

darkstone-cloud/cloud-java-test

Repository files navigation

openapi-java-client

Darkstone Cloud API

  • API version: 1.0.0
    • Build date: 2026-06-27T15:51:13.832251781Z[Etc/UTC]
    • Generator version: 7.24.0-SNAPSHOT

REST API for the Darkstone Cloud platform: container compute, virtual machines, encrypted volumes, S3-compatible object storage, the vector database, AI inference, the DDoS-protected Cloud Gateway, billing and project management.

<a href="/oauth2/authorization/google" style="display:inline-block;background:#4285F4;color:#fff;padding:10px 20px;border-radius:6px;text-decoration:none;font-weight:600;font-family:Arial,sans-serif;margin:8px 0;">🔐 Sign in with Google

After a successful login the session cookie is automatically attached to every Swagger request (same-origin). For non-browser clients, set an API key via the Authorize button in the top right (header X-API-Key, format ds_…).

Automatically generated by the OpenAPI Generator

Requirements

Building the API client library requires:

  1. Java 1.8+
  2. Maven (3.8.3+)/Gradle (7.2+)

Installation

To install the API client library to your local Maven repository, simply execute:

mvn clean install

To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:

mvn clean deploy

Refer to the OSSRH Guide for more information.

Maven users

Add this dependency to your project's POM:

<dependency>
  <groupId>org.openapitools</groupId>
  <artifactId>openapi-java-client</artifactId>
  <version>1.0.0</version>
  <scope>compile</scope>
</dependency>

Gradle users

Add this dependency to your project's build file:

  repositories {
    mavenCentral()     // Needed if the 'openapi-java-client' jar has been published to maven central.
    mavenLocal()       // Needed if the 'openapi-java-client' jar has been published to the local maven repo.
  }

  dependencies {
     implementation "org.openapitools:openapi-java-client:1.0.0"
  }

Others

At first generate the JAR by executing:

mvn clean package

Then manually install the following JARs:

  • target/openapi-java-client-1.0.0.jar
  • target/lib/*.jar

Getting Started

Please follow the installation instruction and execute the following Java code:

// Import classes:
import org.openapitools.client.ApiClient;
import org.openapitools.client.ApiException;
import org.openapitools.client.Configuration;
import org.openapitools.client.auth.*;
import org.openapitools.client.model.*;
import org.openapitools.client.api.AccountApi;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = Configuration.getDefaultApiClient();
    defaultClient.setBasePath("https://api.darkstone.de");
    
    // Configure API key authorization: ApiKeyAuth
    ApiKeyAuth ApiKeyAuth = (ApiKeyAuth) defaultClient.getAuthentication("ApiKeyAuth");
    ApiKeyAuth.setApiKey("YOUR API KEY");
    // Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
    //ApiKeyAuth.setApiKeyPrefix("Token");

    AccountApi apiInstance = new AccountApi(defaultClient);
    String confirmEmail = "confirmEmail_example"; // String | 
    try {
      Object result = apiInstance.deleteAccount(confirmEmail);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling AccountApi#deleteAccount");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Documentation for API Endpoints

All URIs are relative to https://api.darkstone.de

Class Method HTTP request Description
AccountApi deleteAccount DELETE /api/v1/account Irreversibly delete your own account (with email confirmation)
AccountApi getAvatar GET /api/v1/account/avatar Return the profile picture of your own account (proxied from Google's image CDN)
AccountApi updateAccount PUT /api/v1/account Edit your own account (display name). Email = Google identity, not changeable.
AccountApi updateLocale PUT /api/v1/account/locale Save the preferred language (controls the language of system emails)
AccountApi updateProfile PUT /api/v1/account/profile Change the personal address of your own account (NOT the billing address — that is per project)
AiBaseModelsApi list20 GET /api/v1/ai/base-models All base models (authentication required) — for the AI deploy picker
AiBaseModelsApi listLabels GET /api/v1/ai/base-models/{baseUuid}/labels Distinct labels of a base model — selectable at deploy time.
ApiKeysApi create12 POST /api/v1/projects/{projectUuid}/api-keys Create an API key (plaintext secret is shown only once)
ApiKeysApi list13 GET /api/v1/projects/{projectUuid}/api-keys All API keys of the project
ApiKeysApi rename3 PUT /api/v1/projects/{projectUuid}/api-keys/{apiKeyUuid} Rename an API key
ApiKeysApi revoke DELETE /api/v1/projects/{projectUuid}/api-keys/{apiKeyUuid} Revoke an API key
ApiKeysApi updatePermissions1 PUT /api/v1/projects/{projectUuid}/api-keys/{apiKeyUuid}/permissions Change the permissions of an API key
ArtificialIntelligenceApi addTraining POST /api/v1/projects/{projectUuid}/ai/{aiUuid}/training Add a training entry
ArtificialIntelligenceApi delete5 DELETE /api/v1/projects/{projectUuid}/ai/{aiUuid} Delete an AI including its training data
ArtificialIntelligenceApi deleteTraining DELETE /api/v1/projects/{projectUuid}/ai/{aiUuid}/training/{entryUuid} Delete a training entry
ArtificialIntelligenceApi deploy POST /api/v1/projects/{projectUuid}/ai Deploy a new AI – optionally with a base model as the starting point. If baseModelLabels is set, only training entries with those labels are inherited from the base model (platform users may not see the contents, but they choose which classification classes they want).
ArtificialIntelligenceApi exportTraining GET /api/v1/projects/{projectUuid}/ai/{aiUuid}/training/export Export the training data as CSV (images are serialized as base64 in the payload field — no extra handling needed, the payload IS already base64).
ArtificialIntelligenceApi importTraining POST /api/v1/projects/{projectUuid}/ai/{aiUuid}/training/import Import training data from a CSV. Expected format: a 'label,payload' header row. For image classifiers, payload contains the base64-encoded byte stream of the image file.
ArtificialIntelligenceApi invoke POST /api/v1/projects/{projectUuid}/ai/{aiUuid}/invoke Test an AI from the dashboard (rate-limited). Production calls go through the cloud gateways.
ArtificialIntelligenceApi list14 GET /api/v1/projects/{projectUuid}/ai All AIs deployed in the project
ArtificialIntelligenceApi listTraining GET /api/v1/projects/{projectUuid}/ai/{aiUuid}/training List the training data of the AI — paginated (default 10/page)
ArtificialIntelligenceApi listTrainingLabels GET /api/v1/projects/{projectUuid}/ai/{aiUuid}/training/labels Distinct labels of the existing training data
ArtificialIntelligenceApi rename4 PUT /api/v1/projects/{projectUuid}/ai/{aiUuid} Rename an AI
ArtificialIntelligenceApi updateTraining PUT /api/v1/projects/{projectUuid}/ai/{aiUuid}/training/{entryUuid} Update a training entry
AuthApi loginInfo GET /api/v1/auth/login Login hint – use /oauth2/authorization/google
AuthApi me GET /api/v1/auth/me Return the currently logged-in user
BillingApi chargeWithSavedMethod POST /api/v1/projects/{projectUuid}/billing/prepaid/charge One-click top-up with the saved payment method (off-session). The frontend shows clientSecret only if Stripe requires 3DS.
BillingApi confirmSetupCheckoutSession POST /api/v1/projects/{projectUuid}/billing/payment-method/checkout-session/{sessionId}/confirm Bypass for the EWCS flow (mode=setup): after onComplete the frontend calls with the sessionId; the backend retrieves the session from Stripe, extracts the SetupIntent ID and saves the payment method. Idempotent.
BillingApi confirmTopUp POST /api/v1/projects/{projectUuid}/billing/prepaid/confirm/{paymentIntentId} Server-side confirmation after the client confirm: books the balance + creates the invoice + saves the payment-method ID. Idempotent (Stripe invoice ID lookup).
BillingApi createSetupCheckoutSession POST /api/v1/projects/{projectUuid}/billing/payment-method/checkout-session Embedded checkout session (EWCS) in mode=setup to add a card without charging. Counterpart to /payment-method/setup-intent for the new EWCS flow.
BillingApi createTopUpCheckoutSession POST /api/v1/projects/{projectUuid}/billing/prepaid/checkout-session Embedded checkout session (EWCS) for a prepaid top-up. The frontend mounts <EmbeddedCheckoutProvider clientSecret={...}> — Stripe handles all payment methods + 3DS automatically. The balance is booked via the checkout.session.completed webhook.
BillingApi createTopUpPaymentIntent POST /api/v1/projects/{projectUuid}/billing/prepaid/payment-intent Create a PaymentIntent for a Stripe Elements top-up. Returns the clientSecret with which the Stripe Elements form confirms the intent.
BillingApi getAutoRecharge GET /api/v1/projects/{projectUuid}/billing/auto-recharge Auto-recharge configuration of the project
BillingApi getPrepaidBalance GET /api/v1/projects/{projectUuid}/billing/prepaid/balance Current prepaid balance
BillingApi getSavedPaymentMethod GET /api/v1/projects/{projectUuid}/billing/payment-method Saved default payment method (brand + last4 + expiry). null if none is on file.
BillingApi getSpend GET /api/v1/projects/{projectUuid}/billing/spend/{serviceType} Current month-to-date usage
BillingApi listLimits GET /api/v1/projects/{projectUuid}/billing/limits All limits of the project
BillingApi recoverPaymentMethod POST /api/v1/projects/{projectUuid}/billing/payment-method/recover Last-resort recovery: scans Stripe for succeeded SetupIntents/payment methods for the customer and saves the latest one on the billing account. Used when neither the webhook nor the direct confirm succeeded. Idempotent.
BillingApi removeSavedPaymentMethod DELETE /api/v1/projects/{projectUuid}/billing/payment-method Remove the saved payment method (detached at Stripe). Auto-recharge is disabled automatically.
BillingApi setAutoRecharge PUT /api/v1/projects/{projectUuid}/billing/auto-recharge Configure auto-recharge. Requires a saved payment method (created on the first top-up).
BillingApi setLimit PUT /api/v1/projects/{projectUuid}/billing/limits/{serviceType} Set the limit for a service
BillingApi stripeInfo GET /api/v1/projects/{projectUuid}/billing/stripe-info Stripe configuration status (for the test-mode banner)
BillingApi topUp POST /api/v1/projects/{projectUuid}/billing/prepaid/topup [DEPRECATED] Legacy Stripe-hosted checkout (redirect). The frontend uses /prepaid/payment-intent for embedded Elements.
BillingApi usageTimeseries GET /api/v1/projects/{projectUuid}/billing/usage/timeseries Daily usage series for charts. One bucket per day with amounts per ServiceType. months=N goes back N-1 months up to today (default 1).
BillingConfigApi config GET /api/v1/billing/config Stripe publishable key + currency for the frontend Elements init
CloudGatewaysApi create11 POST /api/v1/projects/{projectUuid}/cloudgates
CloudGatewaysApi createRoute1 POST /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes
CloudGatewaysApi delete4 DELETE /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}
CloudGatewaysApi deleteRoute1 DELETE /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes/{routeUuid}
CloudGatewaysApi get3 GET /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}
CloudGatewaysApi list12 GET /api/v1/projects/{projectUuid}/cloudgates
CloudGatewaysApi listRoutes1 GET /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes
CloudGatewaysApi rename2 PUT /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}
CloudGatewaysApi stats1 GET /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}/stats Live statistics: per-minute traffic (60-minute window) + total + route count
CloudGatewaysApi statsLive1 GET /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}/stats/live Live counter: cumulative all-time traffic (O(1) read, for 2s polling)
CloudGatewaysApi updateRoute1 PUT /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes/{routeUuid}
CloudGatewaysApi uploadCertificate1 PUT /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes/{routeUuid}/certificate Upload/replace your own TLS certificate (CUSTOM mode, no auto-renewal)
CloudGatewaysApi useManagedCertificate1 POST /api/v1/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes/{routeUuid}/certificate/managed Switch back to a managed Let's Encrypt certificate (with auto-renewal)
CloudGatewaysV2Api callList GET /api/v2/projects/{projectUuid}/cloudgates
CloudGatewaysV2Api create POST /api/v2/projects/{projectUuid}/cloudgates
CloudGatewaysV2Api createRoute POST /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes
CloudGatewaysV2Api delete DELETE /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}
CloudGatewaysV2Api deleteRoute DELETE /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes/{routeUuid}
CloudGatewaysV2Api get GET /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}
CloudGatewaysV2Api listRoutes GET /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes
CloudGatewaysV2Api rename PUT /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}
CloudGatewaysV2Api stats GET /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}/stats Live statistics: per-minute traffic (60-minute window) + total + route count
CloudGatewaysV2Api statsLive GET /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}/stats/live Live counter: cumulative all-time traffic (O(1) read, for 2s polling)
CloudGatewaysV2Api updateRoute PUT /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes/{routeUuid}
CloudGatewaysV2Api uploadCertificate PUT /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes/{routeUuid}/certificate Upload/replace your own TLS certificate (CUSTOM mode, no auto-renewal)
CloudGatewaysV2Api useManagedCertificate POST /api/v2/projects/{projectUuid}/cloudgates/{gatewayUuid}/routes/{routeUuid}/certificate/managed Switch back to a managed Let's Encrypt certificate (with auto-renewal)
CloudProjectsApi create1 POST /api/v1/projects Create a new project
CloudProjectsApi delete1 DELETE /api/v1/projects/{projectUuid} Delete a project (owner only, with name confirmation)
CloudProjectsApi get1 GET /api/v1/projects/{projectUuid} Project details
CloudProjectsApi getBillingProfile GET /api/v1/projects/{projectUuid}/billing-profile Billing profile of the project (company, VAT ID, address, contact)
CloudProjectsApi getBySlug GET /api/v1/projects/by-slug/{slug} Project details by slug ID (e.g. eternal-empires-9282d151)
CloudProjectsApi leave POST /api/v1/projects/{projectUuid}/leave Leave a project (remove your own membership, non-owners only)
CloudProjectsApi list1 GET /api/v1/projects All projects of the user
CloudProjectsApi myPermissions GET /api/v1/projects/{projectUuid}/me/permissions Effective permissions of the current user in this project
CloudProjectsApi provision POST /api/v1/projects/provision Atomically create a project — only AFTER a verified card. Creates the project + billing account + address + payment method and finalizes it (setupCompleted + starting credit) in one step. Nothing exists beforehand.
CloudProjectsApi provisionIsPostOnly GET /api/v1/projects/provision
CloudProjectsApi transfer POST /api/v1/projects/{projectUuid}/transfer Transfer ownership
CloudProjectsApi update PUT /api/v1/projects/{projectUuid} Rename a project
CloudProjectsApi updateBillingProfile PUT /api/v1/projects/{projectUuid}/billing-profile Update the billing profile of the project (company/VAT ID/address/contact)
CloudVolumesApi create2 POST /api/v1/projects/{projectUuid}/volumes Create a volume (with mandatory encryption + hidden shadow replica)
CloudVolumesApi createUser POST /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/users
CloudVolumesApi delete6 DELETE /api/v1/projects/{projectUuid}/volumes/{volumeUuid}
CloudVolumesApi deleteUser DELETE /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/users/{userUuid}
CloudVolumesApi get4 GET /api/v1/projects/{projectUuid}/volumes/{volumeUuid}
CloudVolumesApi list2 GET /api/v1/projects/{projectUuid}/volumes List the volumes of the project
CloudVolumesApi listUsers GET /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/users
CloudVolumesApi setUserCredential PUT /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/users/{userUuid}/credential
CloudVolumesApi setUserEnabled PUT /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/users/{userUuid}/enabled
CloudVolumesApi setUserPassword PUT /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/users/{userUuid}/password
CloudVolumesApi sites GET /api/v1/projects/{projectUuid}/volumes/sites Locations available in the cluster
CloudVolumesApi updateAnonymous PUT /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/anonymous-access
CloudVolumesApi updateReplication PUT /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/replication Update the replication locations
CloudVolumesApi updateUserPermissions PUT /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/users/{userUuid}/permissions
CloudVolumesFileBrowserApi delete7 DELETE /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/files Delete a file or directory
CloudVolumesFileBrowserApi download GET /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/files/download Download a file
CloudVolumesFileBrowserApi list16 GET /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/files List a directory
CloudVolumesFileBrowserApi mkdir POST /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/files/mkdir Create a directory
CloudVolumesFileBrowserApi rename5 POST /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/files/rename Rename or move a file/directory
CloudVolumesFileBrowserApi upload POST /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/files/upload Upload a file (multipart)
CredentialsApi create10 POST /api/v1/projects/{projectUuid}/credentials Create a credential
CredentialsApi delete3 DELETE /api/v1/projects/{projectUuid}/credentials/{credentialUuid} Delete a credential
CredentialsApi list11 GET /api/v1/projects/{projectUuid}/credentials All credentials of the project (paginated)
CredentialsApi rotateSecret PUT /api/v1/projects/{projectUuid}/credentials/{credentialUuid}/secret Rotate the secret
CredentialsApi update1 PUT /api/v1/projects/{projectUuid}/credentials/{credentialUuid} Update a credential (name, notes, username, expiry)
DataPlaneAiApi chatCompletion POST /data/v1/ai/v1/chat/completions Classification (OpenAI Chat Completions compatible)
DomainsApi authCode GET /api/v1/projects/{projectUuid}/domains/{domain}/auth-code Get EPP/auth code for transfer-out (sensitive, never logged)
DomainsApi autoRenew PUT /api/v1/projects/{projectUuid}/domains/{domain}/auto-renew Toggle auto-renew
DomainsApi availability GET /api/v1/projects/{projectUuid}/domains/availability Check domain availability (cached) incl. sell price (markup)
DomainsApi createContact POST /api/v1/projects/{projectUuid}/domains/contacts Create a reusable contact profile → contactId
DomainsApi detail GET /api/v1/projects/{projectUuid}/domains/{domain} Domain detail (lock/privacy/verification)
DomainsApi getRecords GET /api/v1/projects/{projectUuid}/domains/{domain}/dns List DNS records
DomainsApi list10 GET /api/v1/projects/{projectUuid}/domains List the project's registered domains
DomainsApi listContacts GET /api/v1/projects/{projectUuid}/domains/contacts List the project's reusable contact profiles
DomainsApi privacy PUT /api/v1/projects/{projectUuid}/domains/{domain}/privacy Toggle WHOIS privacy
DomainsApi quote GET /api/v1/projects/{projectUuid}/domains/quote Sell-price quote incl. markup (op=register
DomainsApi register POST /api/v1/projects/{projectUuid}/domains Register a domain (charged after success)
DomainsApi renew POST /api/v1/projects/{projectUuid}/domains/{domain}/renew Renew a domain (charged after success)
DomainsApi restore3 POST /api/v1/projects/{projectUuid}/domains/{domain}/restore Restore a redemption domain (expensive — charged after success)
DomainsApi setContacts PUT /api/v1/projects/{projectUuid}/domains/{domain}/contacts Set registrant/admin/tech/billing contact IDs
DomainsApi setNameservers PUT /api/v1/projects/{projectUuid}/domains/{domain}/nameservers Set nameservers (custom list, or delegate to our cloud-dns)
DomainsApi setRecords PUT /api/v1/projects/{projectUuid}/domains/{domain}/dns Replace all DNS records
DomainsApi transferIn POST /api/v1/projects/{projectUuid}/domains/transfer Transfer-in a domain with auth code (charged after transfer completes)
DomainsApi transferLock PUT /api/v1/projects/{projectUuid}/domains/{domain}/transfer-lock Toggle registrar transfer lock
DomainsApi transferStatus GET /api/v1/projects/{projectUuid}/domains/{domain}/transfer Transfer-in status (registry-paced)
I18nApi catalog GET /api/v1/public/i18n/{locale} Flat translation catalog {key→text} for a locale
I18nApi locales GET /api/v1/public/i18n/locales Available (enabled) languages
InvitationsApi accept POST /api/v1/invitations/{invitationUuid}/accept Accept an invitation (only the invited account email)
InvitationsApi create9 POST /api/v1/projects/{projectUuid}/invitations Invite someone to the project — the invitee is notified by account email
InvitationsApi decline POST /api/v1/invitations/{invitationUuid}/decline Decline an invitation (only the invited account email)
InvitationsApi list9 GET /api/v1/projects/{projectUuid}/invitations Pending/completed invitations of the project (admin)
InvitationsApi mine GET /api/v1/invitations/mine Own invitations (shown in the account notifications)
InvitationsApi revoke1 DELETE /api/v1/projects/{projectUuid}/invitations/{invitationUuid} Revoke an invitation (admin)
InvoicesApi downloadPdf GET /api/v1/projects/{projectUuid}/invoices/{invoiceUuid}/pdf Download an invoice as PDF
InvoicesApi get8 GET /api/v1/projects/{projectUuid}/invoices/{invoiceUuid} Invoice details
InvoicesApi list19 GET /api/v1/projects/{projectUuid}/invoices Invoices (paginated, newest first). Default: 10 per page, max 100.
LookingGlassApi check POST /api/v1/public/looking-glass/check Latency measurement (uplink/downlink/ping) to a public remote IP. 1 measurement per 5s per IP; reloading during the cooldown extends it.
LookingGlassApi ping GET /api/v1/public/looking-glass/ping Tiny no-op for client-side RTT timing (type=self). 204, no-store. Reports the server processing time via Server-Timing so the client can subtract it from TTFB.
MeLimitsApi get9 GET /api/v1/me/limits My limits + current usage
MePaymentSetupApi confirm POST /api/v1/me/setup/payment-method/checkout-session/{sessionId}/confirm Synchronously confirm the card after onComplete and save it on the user (independent of the webhook).
MePaymentSetupApi createSetupCheckoutSession1 POST /api/v1/me/setup/payment-method/checkout-session Embedded SETUP checkout (card-only) against the user-level Stripe customer — without a project.
MePaymentSetupApi status2 GET /api/v1/me/setup/payment-method Does the user have a verified setup card? (precondition for provisioning)
MembersApi list18 GET /api/v1/projects/{projectUuid}/members All members with their roles
MembersApi remove DELETE /api/v1/projects/{projectUuid}/members/{userUuid} Remove a member
NotificationsApi get2 GET /api/v1/projects/{projectUuid}/notifications/{category} Configuration of a single category
NotificationsApi list17 GET /api/v1/projects/{projectUuid}/notifications All notification configurations of the project
NotificationsApi setTargets PUT /api/v1/projects/{projectUuid}/notifications/{category} Replace the recipients of a category
OnboardingApi acceptLegal PUT /api/v1/me/legal/accept Accept the current legal version (versioned re-accept gate)
OnboardingApi assign1 POST /api/v1/me/campaign-affiliate Attribute a campaign code from the affiliate cookie to the user
OnboardingApi save PUT /api/v1/me/onboarding Save profile data; creates the user on first onboarding
OnboardingApi status GET /api/v1/me/onboarding Current profile setup and onboarding status
PricingApi catalog2 GET /api/v1/pricing Full price catalog
ProjectSetupApi saveBilling PUT /api/v1/projects/{projectUuid}/setup/billing Save the billing address + customer type on the project
ProjectSetupApi status1 GET /api/v1/projects/{projectUuid}/setup Current setup status (address, payment method, completed flag)
PublicApi list15 GET /api/v1/public/regions Active cloud regions (display source of truth = admin dashboard)
PublicCampaignsApi lookup GET /api/v1/public/campaigns/by-code/{code} Does this code exist, and what credit is associated with it?
RolesApi assign POST /api/v1/projects/{projectUuid}/roles/{roleUuid}/assignments/{userUuid} Assign a role to a user
RolesApi catalog1 GET /api/v1/projects/{projectUuid}/roles/permissions/catalog List of all available permissions
RolesApi create7 POST /api/v1/projects/{projectUuid}/roles Create a role
RolesApi delete2 DELETE /api/v1/projects/{projectUuid}/roles/{roleUuid} Delete a role
RolesApi list7 GET /api/v1/projects/{projectUuid}/roles All roles of the project
RolesApi rename1 PUT /api/v1/projects/{projectUuid}/roles/{roleUuid} Rename a role
RolesApi unassign DELETE /api/v1/projects/{projectUuid}/roles/{roleUuid}/assignments/{userUuid} Remove a role from a user
RolesApi updatePermissions PUT /api/v1/projects/{projectUuid}/roles/{roleUuid}/permissions Set the permissions of a role
StatsApi accountStats GET /api/v1/account/stats Resource counters of the account (number of projects)
StatsApi projectStats GET /api/v1/projects/{projectUuid}/stats Permission-based resource counters of a project
StripeWebhookApi webhook POST /api/v1/billing/stripe/webhook Stripe webhook endpoint
TenantNetworksApi attach POST /api/v1/projects/{projectUuid}/networks/{networkUuid}/attachments Eine VM in das Netzwerk haengen (MOVE-Semantik)
TenantNetworksApi create8 POST /api/v1/projects/{projectUuid}/networks Ein Netzwerk anlegen
TenantNetworksApi delete9 DELETE /api/v1/projects/{projectUuid}/networks/{networkUuid} Ein Netzwerk loeschen
TenantNetworksApi detach DELETE /api/v1/projects/{projectUuid}/networks/{networkUuid}/attachments/{vmUuid} Eine VM vom Netzwerk trennen
TenantNetworksApi get7 GET /api/v1/projects/{projectUuid}/networks/{networkUuid} Netzwerk-Details
TenantNetworksApi list8 GET /api/v1/projects/{projectUuid}/networks Netzwerke des Projekts auflisten
TenantNetworksApi listAttachments GET /api/v1/projects/{projectUuid}/networks/{networkUuid}/attachments Angehaengte VMs eines Netzwerks auflisten
VirtualMachinesApi applyResize POST /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/apply-resize Apply a pending resize by restarting
VirtualMachinesApi create5 POST /api/v1/projects/{projectUuid}/virtual-machines Create a VM
VirtualMachinesApi delete8 DELETE /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid} Delete a VM
VirtualMachinesApi get5 GET /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid} VM details
VirtualMachinesApi list5 GET /api/v1/projects/{projectUuid}/virtual-machines List the VMs of the project
VirtualMachinesApi reinstall POST /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/reinstall Reinstall a VM (overwrite the OS image)
VirtualMachinesApi resize PUT /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/resize Resize a VM (vCPU class/count + RAM)
VirtualMachinesApi start POST /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/start Start a VM
VirtualMachinesApi stop POST /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/stop Stop a VM
VirtualMachinesApi updateBootReplication PUT /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/boot-replication Update the replication sites of the boot disk
VirtualMachinesApi updateDataVolumes PUT /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/data-volumes Update the mounted data volumes (the VM must be stopped)
VmBackupsApi create6 POST /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/backups Create an incremental backup of the VM boot disk
VmBackupsApi delete11 DELETE /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/backups/{backupName} Delete a VM backup
VmBackupsApi getSchedule1 GET /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/backups/schedule Read the VM boot-disk backup automation (interval in hours, 0 = off)
VmBackupsApi list6 GET /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/backups List the VM boot-disk backups
VmBackupsApi restore2 POST /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/backups/{backupName}/restore Restore a VM boot backup into a NEW volume (includes a 3% restore fee)
VmBackupsApi setSchedule1 PUT /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/backups/schedule Set the VM boot-disk backup automation (customer-controlled; 0 = off, 3% per automatic backup)
VmMetricsApi get6 GET /api/v1/projects/{projectUuid}/virtual-machines/{vmUuid}/metrics Metrics history (in-memory, max ~1h)
VolumeBackupsApi create4 POST /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/backups Create an incremental backup
VolumeBackupsApi delete10 DELETE /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/backups/{backupName} Delete a backup (blocks in the backup target are freed via garbage collection)
VolumeBackupsApi getSchedule GET /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/backups/schedule Read the volume backup automation (interval in hours, 0 = off)
VolumeBackupsApi list4 GET /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/backups List the backups of a volume
VolumeBackupsApi restore1 POST /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/backups/{backupName}/restore Restore a backup into a NEW volume (includes a 3% restore fee)
VolumeBackupsApi setSchedule PUT /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/backups/schedule Set the backup automation (customer-controlled; 0 = off). Each automatic backup is charged the 3% creation fee.
VolumeSnapshotsApi create3 POST /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/snapshots Create a manual snapshot (e.g. before a risky operation)
VolumeSnapshotsApi list3 GET /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/snapshots List the snapshots of a volume
VolumeSnapshotsApi restore POST /api/v1/projects/{projectUuid}/volumes/{volumeUuid}/snapshots/{snapshotName}/restore In-place revert to a snapshot — the volume is briefly unavailable

Documentation for Models

Documentation for Authorization

Authentication schemes defined for the API:

ApiKeyAuth

  • Type: API key
  • API key parameter name: X-API-Key
  • Location: HTTP header

Recommendation

It's recommended to create an instance of ApiClient per thread in a multithreaded environment to avoid any potential issues.

Author

support@darkstone-entertainment.de

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages