> ## Documentation Index
> Fetch the complete documentation index at: https://docs.storiza.store/llms.txt
> Use this file to discover all available pages before exploring further.

# List all snapshots for a VPS

> Lists the snapshots of a VPS owned by the current user. Supports pagination, search (name, description) and sorting.

**Required API key permission:** `vps:read`



## OpenAPI

````yaml /openapi.json get /vps/{vpsId}/snapshots
openapi: 3.0.0
info:
  title: Storiza API
  version: '1.0'
  description: Manage Storiza servers, apps and subscriptions programmatically.
servers:
  - url: https://api.storiza.store
security:
  - bearerAuth: []
tags:
  - name: Servers
    description: Create, order, renew and upgrade VPS servers, and read their details.
  - name: Server power & commands
    description: >-
      Start, stop, reboot and force-stop a server, check its status and run
      commands on it.
  - name: Server settings
    description: >-
      Rename a server, reinstall its operating system and follow its
      installation.
  - name: Server firewall
    description: Turn a server's firewall on or off and manage its rules.
  - name: Server metrics
    description: CPU, memory, disk and network usage, now and over time.
  - name: Server backups
    description: Order the backup add-on, and take, list and delete backups.
  - name: Server snapshots
    description: Take, list and delete snapshots of a server.
  - name: Server sharing
    description: A share link that lets someone else open the server.
  - name: Server catalog
    description: >-
      Plans, operating systems, categories, datacenters and backup plans. Public
      — no key needed.
  - name: Apps
    description: >-
      Deploy, order, renew and configure apps — game servers, databases and
      bots.
  - name: App lifecycle & console
    description: >-
      Start, stop, restart and kill an app, read its output and metrics, and
      send it commands.
  - name: App files
    description: >-
      Read, write, move and delete the files in an app's volume, and its SFTP
      access.
  - name: App backups
    description: Back up an app, download a backup, and restore from one.
  - name: App domains
    description: Your own domains for an app, and their DNS verification.
  - name: App groups
    description: Private networks that let your apps reach each other by hostname.
  - name: App catalog
    description: Templates, plans and locations for apps.
  - name: Subscriptions
    description: What you pay for, how often it renews, and stopping or resuming it.
  - name: Payments
    description: >-
      Follow a payment after an order, and the methods and currencies you can
      pay with.
  - name: Account
    description: Your profile, and a summary of everything you own.
  - name: SSH keys
    description: Public keys you can install on new Linux servers.
paths:
  /vps/{vpsId}/snapshots:
    get:
      tags:
        - Server snapshots
      summary: List all snapshots for a VPS
      description: >-
        Lists the snapshots of a VPS owned by the current user. Supports
        pagination, search (name, description) and sorting.


        **Required API key permission:** `vps:read`
      parameters:
        - schema:
            type: string
            minLength: 1
          required: true
          name: vpsId
          in: path
        - schema:
            type: string
          required: false
          name: _sort_by
          in: query
        - schema:
            type: number
            minimum: 1
            default: 1
          required: false
          name: _page
          in: query
        - schema:
            type: number
            minimum: 1
            maximum: 250
            default: 10
          required: false
          name: _limit
          in: query
        - schema:
            type: string
          required: false
          name: _search
          in: query
      responses:
        '200':
          description: VPS snapshots retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - true
                  message:
                    type: string
                    enum:
                      - VPS snapshots retrieved successfully
                  data:
                    type: array
                    items:
                      allOf:
                        - $ref: '#/components/schemas/VPSSnapshot'
                        - properties: {}
                  pagination:
                    type: object
                    properties:
                      page:
                        type: integer
                        minimum: 1
                      limit:
                        type: integer
                        minimum: 1
                      offset:
                        type: integer
                        minimum: 0
                      total:
                        type: integer
                        minimum: 0
                      totalPages:
                        type: integer
                        minimum: 1
                    required:
                      - page
                      - limit
                      - offset
                      - total
                      - totalPages
                required:
                  - success
                  - message
                  - data
                  - pagination
        '401':
          description: Authentication required | Invalid API key | API key has expired
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  type:
                    type: string
                  code:
                    type: string
                  error:
                    type: string
                  details:
                    nullable: true
                required:
                  - success
                  - type
                  - code
                  - error
              examples:
                authenticationRequired:
                  summary: Authentication required
                  value:
                    success: false
                    type: API
                    code: AUTHENTICATION_ERROR
                    error: Authentication required
                invalidApiKey:
                  summary: Invalid API key
                  value:
                    success: false
                    type: API
                    code: INVALID_API_KEY
                    error: Invalid API key
                expiredApiKey:
                  summary: API key has expired
                  value:
                    success: false
                    type: API
                    code: EXPIRED_API_KEY
                    error: API key has expired
        '403':
          description: >-
            Account is banned | Account is suspended | Insufficient permissions
            | This endpoint cannot be accessed with this authentication method |
            API key lacks the permission required for this endpoint | This API
            key is not permitted from your IP address
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  type:
                    type: string
                  code:
                    type: string
                  error:
                    type: string
                  details:
                    nullable: true
                required:
                  - success
                  - type
                  - code
                  - error
              examples:
                accountBanned:
                  summary: Account is banned
                  value:
                    success: false
                    type: API
                    code: ACCOUNT_BANNED
                    error: Account is banned
                accountSuspended:
                  summary: Account is suspended
                  value:
                    success: false
                    type: API
                    code: ACCOUNT_SUSPENDED
                    error: Account is suspended
                insufficientPermissions:
                  summary: Insufficient permissions
                  value:
                    success: false
                    type: API
                    code: AUTHORIZATION_ERROR
                    error: Insufficient permissions
                transportNotAllowed:
                  summary: >-
                    This endpoint cannot be accessed with this authentication
                    method
                  value:
                    success: false
                    type: API
                    code: TRANSPORT_NOT_ALLOWED
                    error: >-
                      This endpoint cannot be accessed with this authentication
                      method
                missingPermission:
                  summary: API key lacks the permission required for this endpoint
                  value:
                    success: false
                    type: API
                    code: MISSING_PERMISSION
                    error: API key lacks the permission required for this endpoint
                ipNotAllowed:
                  summary: This API key is not permitted from your IP address
                  value:
                    success: false
                    type: API
                    code: IP_NOT_ALLOWED
                    error: This API key is not permitted from your IP address
        '404':
          description: VPS not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  type:
                    type: string
                  code:
                    type: string
                  error:
                    type: string
                  details:
                    nullable: true
                required:
                  - success
                  - type
                  - code
                  - error
              examples:
                vpsNotFound:
                  summary: VPS not found
                  value:
                    success: false
                    type: API
                    code: NOT_FOUND
                    error: VPS not found
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  type:
                    type: string
                    enum:
                      - API
                  code:
                    type: string
                    enum:
                      - VALIDATION_ERROR
                  error:
                    type: string
                    enum:
                      - Validation error
                  details:
                    type: object
                    additionalProperties:
                      type: object
                      properties:
                        _errors:
                          type: array
                          items:
                            type: string
                required:
                  - success
                  - type
                  - code
                  - error
                  - details
              example:
                success: false
                type: API
                code: VALIDATION_ERROR
                error: Validation error
                details:
                  _errors:
                    - The whole schema has some validation problems
                  some_field:
                    _errors:
                      - This field has some validation problem
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  type:
                    type: string
                    enum:
                      - API
                  code:
                    type: string
                    enum:
                      - INTERNAL_ERROR
                  error:
                    type: string
                    enum:
                      - Internal server error
                  details:
                    nullable: true
                required:
                  - success
                  - type
                  - code
                  - error
              example:
                success: false
                type: API
                code: INTERNAL_ERROR
                error: Internal server error
      security:
        - bearerAuth: []
components:
  schemas:
    VPSSnapshot:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
          maxLength: 100
        description:
          type: string
        status:
          type: string
          enum:
            - pending
            - creating
            - completed
            - failed
            - rolling_back
            - deleting
            - deleted
          default: pending
        statusText:
          type: string
        isExpired:
          type: boolean
        vps:
          description: >-
            The related server. Sent **in full** when this endpoint includes it,
            otherwise **only its `id`** — fetch it separately if you need the
            rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/VPS'
            - title: VPS (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The server's id.
              required:
                - id
        sizeMB:
          type: number
        size:
          type: object
          additionalProperties:
            nullable: true
        retentionUntil:
          type: string
          format: date-time
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - name
        - updatedAt
      title: VPSSnapshot
      description: Schema for VPSSnapshot model
      example:
        id: 00000000-0000-4000-8000-000000000000
        name: 'Backup #1'
        description: Example backup
        status: pending
        statusText: Pending
        isExpired: false
        vps:
          id: 00000000-0000-4000-8000-000000000000
        sizeMB: 10240
        size:
          mb: 10240
          gb: 10
        createdAt: '2026-10-09T14:57:34.014Z'
    VPS:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
          maxLength: 100
          default: TEXT
        description:
          type: string
          nullable: true
        isCancelled:
          type: boolean
        suspended:
          type: boolean
          default: false
        cancelledAt:
          type: string
          nullable: true
          format: date-time
        provisionState:
          type: string
          nullable: true
          enum:
            - waiting
            - running
            - completed
            - failed
        provisionSteps:
          type: object
          nullable: true
          additionalProperties:
            nullable: true
        provisionCurrentStep:
          type: number
          default: 0
        provisionFailureReason:
          type: string
          nullable: true
        owner:
          description: >-
            The related user. Sent **in full** when this endpoint includes it,
            otherwise **only its `id`** — fetch it separately if you need the
            rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/User'
            - title: User (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The user's id.
              required:
                - id
        datacenter:
          description: >-
            The related datacenter. Sent **in full** when this endpoint includes
            it, otherwise **only its `id`** — fetch it separately if you need
            the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/Datacenter'
            - title: Datacenter (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The datacenter's id.
              required:
                - id
        plan:
          description: >-
            The related server plan. Sent **in full** when this endpoint
            includes it, otherwise **only its `id`** — fetch it separately if
            you need the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/VPSPlan'
            - title: VPSPlan (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The server plan's id.
              required:
                - id
        template:
          description: >-
            The related operating system template. Sent **in full** when this
            endpoint includes it, otherwise **only its `id`** — fetch it
            separately if you need the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/VPSTemplate'
            - title: VPSTemplate (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The operating system template's id.
              required:
                - id
        templateImageSlug:
          type: string
          nullable: true
          maxLength: 100
        inputs:
          type: object
          properties: {}
          default: {}
        ip:
          description: >-
            The related IP address. Sent **in full** when this endpoint includes
            it, otherwise **only its `id`** — fetch it separately if you need
            the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/VPSIP'
            - title: VPSIP (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The IP address's id.
              required:
                - id
        additionalIps:
          type: array
          items:
            nullable: true
          default: []
        backupPlan:
          description: >-
            The related backup plan. Sent **in full** when this endpoint
            includes it, otherwise **only its `id`** — fetch it separately if
            you need the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/VPSBackupPlan'
            - title: VPSBackupPlan (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The backup plan's id.
              required:
                - id
        subscriptionId:
          type: string
        subscription:
          description: >-
            The related subscription. Sent **in full** when this endpoint
            includes it, otherwise **only its `id`** — fetch it separately if
            you need the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/Subscription'
            - title: Subscription (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The subscription's id.
              required:
                - id
        backupSubscriptionId:
          type: string
        backupSubscription:
          description: >-
            The related subscription. Sent **in full** when this endpoint
            includes it, otherwise **only its `id`** — fetch it separately if
            you need the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/Subscription'
            - title: Subscription (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The subscription's id.
              required:
                - id
        backupCancelled:
          type: boolean
          default: false
        backupCancelledAt:
          type: string
          nullable: true
          format: date-time
        backupSubscriptionExpiresAt:
          type: string
          nullable: true
          format: date-time
        hostname:
          type: string
        sshKeyId:
          type: string
          nullable: true
          format: uuid
        sshKey:
          description: >-
            The related SSH key. Sent **in full** when this endpoint includes
            it, otherwise **only its `id`** — fetch it separately if you need
            the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/SSHKey'
            - title: SSHKey (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The SSH key's id.
              required:
                - id
        members:
          type: array
          items:
            nullable: true
          default: []
        billingProvider:
          type: string
          nullable: true
          maxLength: 64
        externalSubscriptionId:
          type: string
          nullable: true
        externalBillingStatus:
          type: string
          nullable: true
          enum:
            - active
            - past_due
            - canceled
            - paused
            - revoked
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        requiresProvision:
          type: boolean
        provision:
          type: object
          additionalProperties:
            nullable: true
        status:
          type: string
      required:
        - subscriptionId
        - hostname
      title: VPS
      description: Schema for VPS model
      example:
        id: 00000000-0000-4000-8000-000000000000
        name: Example VPS
        description: Example VPS
        isCancelled: false
        suspended: false
        cancelledAt: null
        provisionCurrentStep: 0
        owner:
          id: example-owner-id
        datacenter:
          id: 00000000-0000-4000-8000-000000000000
        plan:
          id: 00000000-0000-4000-8000-000000000000
        template:
          id: 00000000-0000-4000-8000-000000000000
        inputs: {}
        ip: null
        additionalIps: []
        backupPlan: null
        subscriptionId: 00000000-0000-4000-8000-000000000000
        subscription:
          id: 00000000-0000-4000-8000-000000000000
        backupSubscription: null
        backupCancelled: false
        backupCancelledAt: null
        backupSubscriptionExpiresAt: null
        hostname: example-hostname
        sshKey: null
        members: []
        createdAt: '2026-10-09T14:57:34.001Z'
        updatedAt: '2026-10-09T14:57:34.001Z'
        requiresProvision: false
        provision: null
        status: Pending
    User:
      type: object
      properties:
        id:
          type: string
        username:
          type: string
          maxLength: 32
        email:
          type: string
        avatarURL:
          type: string
          nullable: true
        firstname:
          type: string
          nullable: true
          maxLength: 64
        lastname:
          type: string
          nullable: true
          maxLength: 64
        fullname:
          type: string
        flags:
          type: number
          default: 48
        theme:
          type: string
          enum:
            - light
            - dark
            - system
          default: system
        language:
          type: string
          enum:
            - en
            - ar
          default: en
        currency:
          type: string
          maxLength: 10
          default: USD
        timezone:
          type: string
          enum:
            - Africa/Abidjan
            - Africa/Accra
            - Africa/Addis_Ababa
            - Africa/Algiers
            - Africa/Asmera
            - Africa/Bamako
            - Africa/Bangui
            - Africa/Banjul
            - Africa/Bissau
            - Africa/Blantyre
            - Africa/Brazzaville
            - Africa/Bujumbura
            - Africa/Cairo
            - Africa/Casablanca
            - Africa/Ceuta
            - Africa/Conakry
            - Africa/Dakar
            - Africa/Dar_es_Salaam
            - Africa/Djibouti
            - Africa/Douala
            - Africa/El_Aaiun
            - Africa/Freetown
            - Africa/Gaborone
            - Africa/Harare
            - Africa/Johannesburg
            - Africa/Juba
            - Africa/Kampala
            - Africa/Khartoum
            - Africa/Kigali
            - Africa/Kinshasa
            - Africa/Lagos
            - Africa/Libreville
            - Africa/Lome
            - Africa/Luanda
            - Africa/Lubumbashi
            - Africa/Lusaka
            - Africa/Malabo
            - Africa/Maputo
            - Africa/Maseru
            - Africa/Mbabane
            - Africa/Mogadishu
            - Africa/Monrovia
            - Africa/Nairobi
            - Africa/Ndjamena
            - Africa/Niamey
            - Africa/Nouakchott
            - Africa/Ouagadougou
            - Africa/Porto-Novo
            - Africa/Sao_Tome
            - Africa/Tripoli
            - Africa/Tunis
            - Africa/Windhoek
            - America/Adak
            - America/Anchorage
            - America/Anguilla
            - America/Antigua
            - America/Araguaina
            - America/Argentina/La_Rioja
            - America/Argentina/Rio_Gallegos
            - America/Argentina/Salta
            - America/Argentina/San_Juan
            - America/Argentina/San_Luis
            - America/Argentina/Tucuman
            - America/Argentina/Ushuaia
            - America/Aruba
            - America/Asuncion
            - America/Bahia
            - America/Bahia_Banderas
            - America/Barbados
            - America/Belem
            - America/Belize
            - America/Blanc-Sablon
            - America/Boa_Vista
            - America/Bogota
            - America/Boise
            - America/Buenos_Aires
            - America/Cambridge_Bay
            - America/Campo_Grande
            - America/Cancun
            - America/Caracas
            - America/Catamarca
            - America/Cayenne
            - America/Cayman
            - America/Chicago
            - America/Chihuahua
            - America/Ciudad_Juarez
            - America/Coral_Harbour
            - America/Cordoba
            - America/Costa_Rica
            - America/Coyhaique
            - America/Creston
            - America/Cuiaba
            - America/Curacao
            - America/Danmarkshavn
            - America/Dawson
            - America/Dawson_Creek
            - America/Denver
            - America/Detroit
            - America/Dominica
            - America/Edmonton
            - America/Eirunepe
            - America/El_Salvador
            - America/Fort_Nelson
            - America/Fortaleza
            - America/Glace_Bay
            - America/Godthab
            - America/Goose_Bay
            - America/Grand_Turk
            - America/Grenada
            - America/Guadeloupe
            - America/Guatemala
            - America/Guayaquil
            - America/Guyana
            - America/Halifax
            - America/Havana
            - America/Hermosillo
            - America/Indiana/Knox
            - America/Indiana/Marengo
            - America/Indiana/Petersburg
            - America/Indiana/Tell_City
            - America/Indiana/Vevay
            - America/Indiana/Vincennes
            - America/Indiana/Winamac
            - America/Indianapolis
            - America/Inuvik
            - America/Iqaluit
            - America/Jamaica
            - America/Jujuy
            - America/Juneau
            - America/Kentucky/Monticello
            - America/Kralendijk
            - America/La_Paz
            - America/Lima
            - America/Los_Angeles
            - America/Louisville
            - America/Lower_Princes
            - America/Maceio
            - America/Managua
            - America/Manaus
            - America/Marigot
            - America/Martinique
            - America/Matamoros
            - America/Mazatlan
            - America/Mendoza
            - America/Menominee
            - America/Merida
            - America/Metlakatla
            - America/Mexico_City
            - America/Miquelon
            - America/Moncton
            - America/Monterrey
            - America/Montevideo
            - America/Montserrat
            - America/Nassau
            - America/New_York
            - America/Nome
            - America/Noronha
            - America/North_Dakota/Beulah
            - America/North_Dakota/Center
            - America/North_Dakota/New_Salem
            - America/Ojinaga
            - America/Panama
            - America/Paramaribo
            - America/Phoenix
            - America/Port-au-Prince
            - America/Port_of_Spain
            - America/Porto_Velho
            - America/Puerto_Rico
            - America/Punta_Arenas
            - America/Rankin_Inlet
            - America/Recife
            - America/Regina
            - America/Resolute
            - America/Rio_Branco
            - America/Santarem
            - America/Santiago
            - America/Santo_Domingo
            - America/Sao_Paulo
            - America/Scoresbysund
            - America/Sitka
            - America/St_Barthelemy
            - America/St_Johns
            - America/St_Kitts
            - America/St_Lucia
            - America/St_Thomas
            - America/St_Vincent
            - America/Swift_Current
            - America/Tegucigalpa
            - America/Thule
            - America/Tijuana
            - America/Toronto
            - America/Tortola
            - America/Vancouver
            - America/Whitehorse
            - America/Winnipeg
            - America/Yakutat
            - Antarctica/Casey
            - Antarctica/Davis
            - Antarctica/DumontDUrville
            - Antarctica/Macquarie
            - Antarctica/Mawson
            - Antarctica/McMurdo
            - Antarctica/Palmer
            - Antarctica/Rothera
            - Antarctica/Syowa
            - Antarctica/Troll
            - Antarctica/Vostok
            - Arctic/Longyearbyen
            - Asia/Aden
            - Asia/Almaty
            - Asia/Amman
            - Asia/Anadyr
            - Asia/Aqtau
            - Asia/Aqtobe
            - Asia/Ashgabat
            - Asia/Atyrau
            - Asia/Baghdad
            - Asia/Bahrain
            - Asia/Baku
            - Asia/Bangkok
            - Asia/Barnaul
            - Asia/Beirut
            - Asia/Bishkek
            - Asia/Brunei
            - Asia/Calcutta
            - Asia/Chita
            - Asia/Colombo
            - Asia/Damascus
            - Asia/Dhaka
            - Asia/Dili
            - Asia/Dubai
            - Asia/Dushanbe
            - Asia/Famagusta
            - Asia/Gaza
            - Asia/Hebron
            - Asia/Hong_Kong
            - Asia/Hovd
            - Asia/Irkutsk
            - Asia/Jakarta
            - Asia/Jayapura
            - Asia/Jerusalem
            - Asia/Kabul
            - Asia/Kamchatka
            - Asia/Karachi
            - Asia/Katmandu
            - Asia/Khandyga
            - Asia/Krasnoyarsk
            - Asia/Kuala_Lumpur
            - Asia/Kuching
            - Asia/Kuwait
            - Asia/Macau
            - Asia/Magadan
            - Asia/Makassar
            - Asia/Manila
            - Asia/Muscat
            - Asia/Nicosia
            - Asia/Novokuznetsk
            - Asia/Novosibirsk
            - Asia/Omsk
            - Asia/Oral
            - Asia/Phnom_Penh
            - Asia/Pontianak
            - Asia/Pyongyang
            - Asia/Qatar
            - Asia/Qostanay
            - Asia/Qyzylorda
            - Asia/Rangoon
            - Asia/Riyadh
            - Asia/Saigon
            - Asia/Sakhalin
            - Asia/Samarkand
            - Asia/Seoul
            - Asia/Shanghai
            - Asia/Singapore
            - Asia/Srednekolymsk
            - Asia/Taipei
            - Asia/Tashkent
            - Asia/Tbilisi
            - Asia/Tehran
            - Asia/Thimphu
            - Asia/Tokyo
            - Asia/Tomsk
            - Asia/Ulaanbaatar
            - Asia/Urumqi
            - Asia/Ust-Nera
            - Asia/Vientiane
            - Asia/Vladivostok
            - Asia/Yakutsk
            - Asia/Yekaterinburg
            - Asia/Yerevan
            - Atlantic/Azores
            - Atlantic/Bermuda
            - Atlantic/Canary
            - Atlantic/Cape_Verde
            - Atlantic/Faeroe
            - Atlantic/Madeira
            - Atlantic/Reykjavik
            - Atlantic/South_Georgia
            - Atlantic/St_Helena
            - Atlantic/Stanley
            - Australia/Adelaide
            - Australia/Brisbane
            - Australia/Broken_Hill
            - Australia/Darwin
            - Australia/Eucla
            - Australia/Hobart
            - Australia/Lindeman
            - Australia/Lord_Howe
            - Australia/Melbourne
            - Australia/Perth
            - Australia/Sydney
            - Europe/Amsterdam
            - Europe/Andorra
            - Europe/Astrakhan
            - Europe/Athens
            - Europe/Belgrade
            - Europe/Berlin
            - Europe/Bratislava
            - Europe/Brussels
            - Europe/Bucharest
            - Europe/Budapest
            - Europe/Busingen
            - Europe/Chisinau
            - Europe/Copenhagen
            - Europe/Dublin
            - Europe/Gibraltar
            - Europe/Guernsey
            - Europe/Helsinki
            - Europe/Isle_of_Man
            - Europe/Istanbul
            - Europe/Jersey
            - Europe/Kaliningrad
            - Europe/Kiev
            - Europe/Kirov
            - Europe/Lisbon
            - Europe/Ljubljana
            - Europe/London
            - Europe/Luxembourg
            - Europe/Madrid
            - Europe/Malta
            - Europe/Mariehamn
            - Europe/Minsk
            - Europe/Monaco
            - Europe/Moscow
            - Europe/Oslo
            - Europe/Paris
            - Europe/Podgorica
            - Europe/Prague
            - Europe/Riga
            - Europe/Rome
            - Europe/Samara
            - Europe/San_Marino
            - Europe/Sarajevo
            - Europe/Saratov
            - Europe/Simferopol
            - Europe/Skopje
            - Europe/Sofia
            - Europe/Stockholm
            - Europe/Tallinn
            - Europe/Tirane
            - Europe/Ulyanovsk
            - Europe/Vaduz
            - Europe/Vatican
            - Europe/Vienna
            - Europe/Vilnius
            - Europe/Volgograd
            - Europe/Warsaw
            - Europe/Zagreb
            - Europe/Zurich
            - Indian/Antananarivo
            - Indian/Chagos
            - Indian/Christmas
            - Indian/Cocos
            - Indian/Comoro
            - Indian/Kerguelen
            - Indian/Mahe
            - Indian/Maldives
            - Indian/Mauritius
            - Indian/Mayotte
            - Indian/Reunion
            - Pacific/Apia
            - Pacific/Auckland
            - Pacific/Bougainville
            - Pacific/Chatham
            - Pacific/Easter
            - Pacific/Efate
            - Pacific/Enderbury
            - Pacific/Fakaofo
            - Pacific/Fiji
            - Pacific/Funafuti
            - Pacific/Galapagos
            - Pacific/Gambier
            - Pacific/Guadalcanal
            - Pacific/Guam
            - Pacific/Honolulu
            - Pacific/Kiritimati
            - Pacific/Kosrae
            - Pacific/Kwajalein
            - Pacific/Majuro
            - Pacific/Marquesas
            - Pacific/Midway
            - Pacific/Nauru
            - Pacific/Niue
            - Pacific/Norfolk
            - Pacific/Noumea
            - Pacific/Pago_Pago
            - Pacific/Palau
            - Pacific/Pitcairn
            - Pacific/Ponape
            - Pacific/Port_Moresby
            - Pacific/Rarotonga
            - Pacific/Saipan
            - Pacific/Tahiti
            - Pacific/Tarawa
            - Pacific/Tongatapu
            - Pacific/Truk
            - Pacific/Wake
            - Pacific/Wallis
          default: Europe/London
        notificationPreferences:
          type: object
          properties:
            securityAlerts:
              type: boolean
            billingNotifications:
              type: boolean
            serverStatus:
              type: boolean
            productUpdates:
              type: boolean
            newsletter:
              type: boolean
            marketingEmails:
              type: boolean
          default:
            securityAlerts: true
            billingNotifications: true
            serverStatus: true
            productUpdates: true
            newsletter: false
            marketingEmails: false
          required:
            - securityAlerts
            - billingNotifications
            - serverStatus
            - productUpdates
            - newsletter
            - marketingEmails
        loginMethods:
          type: string
          enum:
            - google
            - discord
            - password
        twoFactorEnabled:
          type: boolean
        balance:
          type: number
          default: 0
        addressLine1:
          type: string
          nullable: true
          maxLength: 255
        addressLine2:
          type: string
          nullable: true
          maxLength: 255
        city:
          type: string
          nullable: true
          maxLength: 100
        state:
          type: string
          nullable: true
          maxLength: 100
        postalCode:
          type: string
          nullable: true
          maxLength: 20
        country:
          type: string
          nullable: true
          maxLength: 2
        phoneNumber:
          type: string
          nullable: true
          maxLength: 20
        accountLimits:
          type: object
          properties:
            apps:
              type: number
            vps:
              type: number
            priceByApp:
              type: number
            priceByVPS:
              type: number
            timeByApp:
              type: number
            timeByVPS:
              type: number
            mode:
              type: string
          default:
            apps: -1
            vps: -1
            priceByApp: -1
            priceByVPS: -1
            timeByApp: -1
            timeByVPS: -1
            mode: unlimited
          required:
            - apps
            - vps
            - priceByApp
            - priceByVPS
            - timeByApp
            - timeByVPS
            - mode
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        isVerified:
          type: boolean
        isSuspended:
          type: boolean
        isBanned:
          type: boolean
        isAdmin:
          type: boolean
        isSupport:
          type: boolean
        isBetaTester:
          type: boolean
      required:
        - username
        - email
        - updatedAt
      title: User
      description: Schema for User model
      example:
        id: 00000000-0000-4000-8000-000000000000
        username: example
        email: user@example.com
        firstname: First
        lastname: Last
        fullname: First Last
        flags: '48'
        theme: system
        language: en
        currency: USD
        timezone: Europe/London
        notificationPreferences:
          securityAlerts: true
          billingNotifications: true
          serverStatus: true
          productUpdates: true
          newsletter: false
          marketingEmails: false
        loginMethods: []
        twoFactorEnabled: false
        balance: '0'
        accountLimits:
          apps: -1
          vps: -1
          priceByApp: -1
          priceByVPS: -1
          timeByApp: -1
          timeByVPS: -1
          mode: unlimited
        createdAt: '2026-10-09T14:57:33.835Z'
        isVerified: false
        isSuspended: false
        isBanned: false
        isAdmin: false
        isSupport: false
        isBetaTester: false
    Datacenter:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
          maxLength: 100
        priority:
          type: number
          default: 0
        location:
          type: string
          nullable: true
          maxLength: 100
        region:
          type: string
          nullable: true
          maxLength: 10
        country:
          type: string
          maxLength: 2
          default: EG
        features:
          type: array
          items:
            type: object
            properties:
              feature:
                type: string
            required:
              - feature
          default:
            - feature: Standard
        isActive:
          type: boolean
          default: true
        isMaintenanceMode:
          type: boolean
          default: false
        isAvailable:
          type: boolean
        supportFreeTrial:
          type: boolean
          default: false
        isForFreeTrialOnly:
          type: boolean
          default: false
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - name
        - updatedAt
      title: Datacenter
      description: Schema for Datacenter model
      example:
        id: 00000000-0000-4000-8000-000000000000
        name: Example Datacenter
        priority: 1
        location: Example Location
        region: EU
        country: EG
        features:
          - feature: Standard
        isActive: true
        isMaintenanceMode: false
        isAvailable: true
        supportFreeTrial: false
        isForFreeTrialOnly: false
        createdAt: '2026-10-09T14:57:33.923Z'
    VPSPlan:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
          maxLength: 100
        categoryId:
          type: string
          nullable: true
        price:
          type: number
        ram:
          type: object
          properties:
            size:
              type: number
            sizeGB:
              type: number
          default:
            size: 1024
            sizeGB: 1
          required:
            - size
            - sizeGB
        storage:
          type: object
          properties:
            size:
              type: number
            sizeGB:
              type: number
          default:
            size: 1024
            sizeGB: 1
          required:
            - size
            - sizeGB
        cpuCores:
          type: number
        cpuThreads:
          type: number
        cpu:
          type: object
          properties:
            cores:
              type: number
            threads:
              type: number
          default:
            cores: 2
            threads: 3
          required:
            - cores
            - threads
        networkSpeedLimitMbps:
          type: number
          nullable: true
        bandwidthLimitGb:
          type: number
          nullable: true
        maxSnapshots:
          type: number
          default: 3
        duration:
          type: number
          default: 2592000000
        features:
          type: object
          additionalProperties:
            nullable: true
        able:
          type: boolean
          default: true
        hidden:
          type: boolean
          default: false
        outOfStock:
          type: boolean
          default: false
        isAvailable:
          type: boolean
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - name
        - price
        - cpuCores
        - cpuThreads
      title: VPSPlan
      description: Schema for VPSPlan model
      example:
        id: 00000000-0000-4000-8000-000000000000
        name: Basic VPS
        price: '9.99'
        ram:
          size: 2048
          sizeGB: 2
        storage:
          size: 20480
          sizeGB: 20
        cpuCores: 2
        cpuThreads: 4
        cpu:
          cores: 2
          threads: 4
        networkSpeedLimitMbps: 1000
        bandwidthLimitGb: 4096
        maxSnapshots: 3
        duration: '2592000000'
        able: true
        hidden: false
        outOfStock: false
        isAvailable: true
        createdAt: '2026-10-09T14:57:33.988Z'
        updatedAt: '2026-10-09T14:57:33.988Z'
    VPSTemplate:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
          maxLength: 100
        description:
          type: string
          default: ''
        slug:
          type: string
          maxLength: 100
        iconURL:
          type: string
          nullable: true
          maxLength: 500
        category:
          type: string
          enum:
            - plain_os
            - panel
            - application
          default: plain_os
        platform:
          type: string
          enum:
            - linux
            - windows
            - windows-server
          default: linux
        tags:
          type: array
          items:
            type: string
          default: []
        features:
          type: array
          items:
            type: string
          default: []
        versions:
          type: object
          additionalProperties:
            nullable: true
        isActive:
          type: boolean
          default: false
        isPopular:
          type: boolean
          default: false
        defaultUsername:
          type: string
          maxLength: 100
          default: root
        inputs:
          type: array
          items:
            nullable: true
          default: []
        instructions:
          type: string
          nullable: true
        author:
          type: string
          nullable: true
        websiteURL:
          type: string
          nullable: true
        quickStartGuideURL:
          type: string
          nullable: true
        documentationURL:
          type: string
          nullable: true
        fourmURL:
          type: string
          nullable: true
        supportURL:
          type: string
          nullable: true
        metadata:
          type: object
          properties: {}
          default: {}
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - name
        - slug
      title: VPSTemplate
      description: Schema for VPSTemplate model
      example:
        id: 00000000-0000-4000-8000-000000000000
        name: Ubuntu
        description: Ubuntu 24.04 LTS
        slug: ubuntu
        iconURL: https://cdn.example.com/icons/ubuntu.png
        category: plain_os
        platform: linux
        tags: []
        features: []
        versions:
          - slug: 24.04-lts
            label: 24.04 LTS
            isLatest: true
            isAutoSelect: true
        isActive: true
        isPopular: true
        defaultUsername: root
        inputs: []
        metadata: {}
        createdAt: '2026-10-09T14:57:33.993Z'
        updatedAt: '2026-10-09T14:57:33.993Z'
    VPSIP:
      type: object
      properties:
        id:
          type: string
        address:
          type: string
          maxLength: 45
        gateway:
          type: string
          maxLength: 45
        netmask:
          type: string
          maxLength: 10
          default: '23'
        primaryDns:
          type: string
          nullable: true
          maxLength: 45
        secondaryDns:
          type: string
          nullable: true
          maxLength: 45
        datacenter:
          description: >-
            The related datacenter. Sent **in full** when this endpoint includes
            it, otherwise **only its `id`** — fetch it separately if you need
            the rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/Datacenter'
            - title: Datacenter (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The datacenter's id.
              required:
                - id
        node:
          type: string
        isActive:
          type: boolean
          default: true
        privateIPDetails:
          type: object
          nullable: true
          additionalProperties:
            nullable: true
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        cidrNotation:
          type: string
      required:
        - address
        - gateway
        - node
      title: VPSIP
      description: Schema for VPSIP model
      example:
        id: 00000000-0000-4000-8000-000000000000
        address: 192.168.1.10
        gateway: 192.168.1.1
        netmask: '24'
        primaryDns: 8.8.8.8
        secondaryDns: 8.8.4.4
        datacenter:
          id: 00000000-0000-4000-8000-000000000000
        node: s000
        isActive: true
        createdAt: '2026-10-09T14:57:33.982Z'
        updatedAt: '2026-10-09T14:57:33.982Z'
        cidrNotation: 192.168.1.10/24
    VPSBackupPlan:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
          maxLength: 100
        description:
          type: string
        frequency:
          type: string
          enum:
            - daily
            - weekly
            - monthly
          default: daily
        frequencyText:
          type: string
        limits:
          type: number
        price:
          type: number
        pricing:
          type: object
          properties:
            price:
              type: number
            formattedPrice:
              type: string
          default:
            price: 0
            formattedPrice: $0.00
          required:
            - price
            - formattedPrice
        duration:
          type: number
          default: 2592000
        features:
          type: array
          items:
            nullable: true
          default: []
        isActive:
          type: boolean
          default: true
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - name
        - price
      title: VPSBackupPlan
      description: Schema for VPSBackupPlan model
      example:
        id: 00000000-0000-4000-8000-000000000000
        name: 'Backup Plan #1'
        description: Example Backup Plan
        frequency: daily
        frequencyText: Daily
        limits:
          maxStorageGB: 400
          maxBackups: 4
          retentionDays: 7
        price: '4'
        pricing:
          price: 4
          formattedPrice: $4.00
        duration: '2592000'
        features: []
        isActive: true
        createdAt: '2026-10-09T14:57:33.978Z'
        updatedAt: '2026-10-09T14:57:33.978Z'
    Subscription:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
          maxLength: 128
        status:
          type: string
          enum:
            - active
            - past_due
            - renewing
            - cancelled
            - paused
            - expired
          default: active
        user:
          description: >-
            The related user. Sent **in full** when this endpoint includes it,
            otherwise **only its `id`** — fetch it separately if you need the
            rest. `null` when there is none.
          nullable: true
          anyOf:
            - $ref: '#/components/schemas/User'
            - title: User (id only)
              type: object
              properties:
                id:
                  type: string
                  description: The user's id.
              required:
                - id
        provider:
          type: string
          maxLength: 64
        method:
          type: string
          maxLength: 64
        amount:
          type: number
          default: 0
        currency:
          type: string
          maxLength: 3
          default: USD
        durationDays:
          type: number
          default: 30
        currentPeriodStart:
          type: string
          format: date-time
        currentPeriodEnd:
          type: string
          format: date-time
        cancelledAt:
          type: string
          format: date-time
        lastSyncedAt:
          type: string
          format: date-time
        lastRenewedAt:
          type: string
          format: date-time
        supportsManagement:
          type: boolean
        metadata:
          type: object
          properties: {}
          default: {}
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - provider
        - method
        - currentPeriodEnd
        - createdAt
        - updatedAt
      title: Subscription
      description: Schema for Subscription model
      example:
        id: 00000000-0000-4000-8000-000000000000
        status: active
        user:
          id: 00000000-0000-4000-8000-000000000000
        provider: balance
        method: balance
        amount: '12'
        currency: USD
        durationDays: 30
        currentPeriodEnd: '2026-10-09T14:57:33.877Z'
        supportsManagement: false
        metadata: {}
    SSHKey:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
          maxLength: 150
        comment:
          type: string
          nullable: true
          maxLength: 255
        userId:
          type: string
        publicKey:
          type: string
        algorithm:
          type: string
          maxLength: 20
        bits:
          type: number
        fingerprint:
          type: string
          maxLength: 100
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - name
        - userId
        - publicKey
        - algorithm
        - bits
        - fingerprint
        - updatedAt
      title: SSHKey
      description: Schema for SSHKey model
      example:
        id: 00000000-0000-4000-8000-000000000000
        name: laptop
        userId: 00000000-0000-4000-8000-000000000000
        publicKey: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... user@laptop
        algorithm: ed25519
        bits: 256
        fingerprint: SHA256:abcdef0123456789...
        createdAt: '2026-10-09T14:57:33.969Z'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        An API key from the Storiza dashboard (API & Integrations), sent as
        `Authorization: Bearer stz_…`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.