{
 "openapi": "3.1.0",
 "info": {
  "title": "Gyro Public API",
  "version": "2.30.0",
  "summary": "Manage Gyro cloud servers, SSH keys and billing programmatically.",
  "x-summary-tr": "Gyro bulut sunucularınızı, SSH anahtarlarınızı ve faturalarınızı programla yönetin.",
  "contact": {
   "name": "Gyro Hosting",
   "url": "https://www.gyrohosting.com"
  },
  "license": {
   "name": "Proprietary",
   "identifier": "LicenseRef-Gyro-API-Terms"
  }
 },
 "servers": [
  {
   "url": "https://www.gyrohosting.com/api/v1/client",
   "description": "Production"
  }
 ],
 "paths": {
  "/cloud/storage/plans": {
   "get": {
    "tags": [
     "Object storage"
    ],
    "operationId": "listStoragePlans",
    "summary": "List Object Storage plans",
    "x-summary-tr": "Nesne depolama paketlerini listele",
    "x-scope": "cloud_read",
    "x-cli": {
     "command": "storage plans"
    },
    "description": "Orderable Object Storage (`standard-*`) and Protected Storage (`protected-*`) plans with limits, prices per billing cycle (fixed EUR, VAT excluded) and add-ons: extra traffic packs (`1tb`, `5tb`, one-time, this calendar month) and object lock buckets (protected plans). `available: false` = no capacity right now.",
    "x-description-tr": "Sipariş edilebilir Nesne Depolama (`standard-*`) ve Korumalı Depolama (`protected-*`) paketleri: sınırlar, dönem başına fiyat (sabit EUR, KDV hariç) ve ek hizmetler: ek trafik paketi (`1tb`, `5tb`, tek seferlik, bu takvim ayı) ve nesne kilitli kova hakkı (korumalı paketler). `available: false` = şu an kapasite yok.",
    "parameters": [],
    "responses": {
     "200": {
      "description": "OK",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "properties": {
          "data": {
           "type": "array",
           "items": {
            "$ref": "#/components/schemas/StoragePlan"
           }
          }
         }
        }
       }
      }
     }
    }
   }
  }
 },
 "components": {
  "schemas": {
   "StoragePlan": {
    "type": "object",
    "properties": {
     "id": {
      "type": "integer",
      "description": "product id"
     },
     "plan": {
      "type": "string",
      "example": "standard-1tb",
      "description": "plan name for POST /cloud/storage: standard-250gb | standard-1tb | standard-5tb | standard-10tb | protected-250gb | protected-1tb | protected-5tb | protected-10tb"
     },
     "name": {
      "type": "string"
     },
     "kind": {
      "type": "string",
      "enum": [
       "standard",
       "protected"
      ],
      "description": "standard = Object Storage; protected = Protected Storage (versioning always on, object lock with the add-on)"
     },
     "region": {
      "type": "string",
      "example": "tr-ist-1"
     },
     "size_gb": {
      "type": "integer",
      "description": "storage quota"
     },
     "max_buckets": {
      "type": "integer"
     },
     "max_access_keys": {
      "type": "integer"
     },
     "max_objects": {
      "type": "integer"
     },
     "included_traffic_gb_month": {
      "type": "integer",
      "description": "outbound traffic included every calendar month"
     },
     "versioning": {
      "type": "boolean"
     },
     "object_lock": {
      "description": "false, or how to get it (add-on)"
     },
     "available": {
      "type": "boolean",
      "description": "false = not orderable right now (capacity)"
     },
     "prices": {
      "type": "array",
      "items": {
       "type": "object",
       "properties": {
        "cycle": {
         "type": "string",
         "enum": [
          "monthly",
          "quarterly",
          "semiannually",
          "annually"
         ]
        },
        "amount": {
         "type": "number"
        },
        "list_amount": {
         "type": [
          "number",
          "null"
         ],
         "description": "list price before the discount"
        },
        "currency": {
         "type": "string",
         "example": "EUR"
        }
       }
      }
     },
     "tax_included": {
      "type": "boolean",
      "const": false
     },
     "addons": {
      "type": "object",
      "properties": {
       "extra_traffic": {
        "type": "array",
        "items": {
         "type": "object",
         "properties": {
          "size": {
           "type": "string",
           "enum": [
            "1tb",
            "5tb"
           ]
          },
          "extra_traffic_gb": {
           "type": "integer"
          },
          "price": {
           "type": "object"
          },
          "billing": {
           "type": "string"
          }
         }
        },
        "description": "one-time traffic packs, valid until the end of the calendar month of purchase"
       },
       "object_lock_buckets": {
        "type": [
         "object",
         "null"
        ],
        "description": "protected plans: price per locked bucket per cycle (min 1, max 50)"
       }
      }
     }
    }
   }
  }
 },
 "security": [
  {
   "bearerAuth": []
  }
 ]
}