window.API = {
"sections": [
{
"name": "Authentication",
"description": "Methods for authenticating with the Provisioning Portal.",
"is_ecommerce": true,
"methods": [
{
"uri": "/token",
"method": "POST",
"nokey": true,
"description": "Retrieve your authentication token without resetting it.",
"parameters": [
{
"name": "username",
"type": "string",
"description": "Your Provisioning Portal username.",
"example": "zadarauser",
"required": true
},
{
"name": "password",
"type": "string",
"description": "Your Provisioning Portal password.",
"example": "securepassword0000",
"required": true
}
],
"response": "\n\n success\n \n (API token)\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"token\": \"(API token)\"\n }\n}"
},
{
"uri": "/token/reset",
"method": "POST",
"nokey": true,
"description": "Reset and retrieve your API token.",
"parameters": [
{
"name": "username",
"type": "string",
"description": "Your Provisioning Portal username.",
"example": "zadarauser",
"required": true
},
{
"name": "password",
"type": "string",
"description": "Your Provisioning Portal password.",
"example": "securepassword0000",
"required": true
}
],
"response": "\n\n success\n \n (API token)\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"token\": \"(API token)\"\n }\n}"
}
]
},
{
"name": "Cloud",
"description": "Retrieve Cloud's Configurations",
"is_ecommerce": true,
"methods": [
{
"uri": "/clouds",
"method": "GET",
"description": "Get the list of available Clouds and their configuration options.",
"response": "\n\n success\n \n \n 1\n AWS US East (N. Virginia) 1\n 59af475-2a28-4eb4-b9c6-9567d7fb8ae6\n true\n \n \n true \n 1024\n 00\n 0.15\n 2 CPUs, 1GB RAM\n 2\n \n \n \n \n \n \n \n \n 0.11\n 300\n 300GB SAS 15000 RPM\n SAS_300GB_15KRPM\n 1\n \n \n 0.22\n 600\n 600GB SAS 10000 RPM\n SAS_557GB_10500RPM\n 2\n \n \n \n \n \n 1\n 0.49\n 200\n 5\n 80\n vsa.V2.baby.vf\n 0.49\n 1 CPU, 4GB RAM\n \n 20\n 20\n 20\n \n \n \n \n false\n \n \n true\n 200\n \n 2\n true\n \n true\n \n \n \n First Zone\n zone_0\n \n \n Second Zone\n zone_1\n \n \n \n \n \"id\": 4,\n \"name\": \"2_way\",\n \"replicas\": 2,\n \"data_fragments\": 0,\n \"parity_fragments\": 0\n \n \n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n {\n \"id\": \"1\",\n \"name\": \"AWS US East (N. Virginia) 1\",\n \"uuid\": \"59af475-2a28-4eb4-b9c6-9567d7fb8ae6\",\n \"enabled\": \"true\",\n \"app_engines\": [\n {\n \"default\": \"true \",\n \"memory_mb\": \"1024\",\n \"name\": \"00\",\n \"price\": \"0.15\",\n \"specs\": \"2 CPUs, 1GB RAM\",\n \"vcpus\": \"2\"\n }\n ],\n \"nova_url\": null,\n \"auth_url\": null,\n \"keystone_url\": null,\n \"glance_url\": null,\n \"drive_types\": [\n {\n \"hourly_price_usd\": \"0.11\",\n \"capacity_gb\": 300,\n \"name\": \"300GB SAS 15000 RPM\",\n \"key\": \"SAS_300GB_15KRPM\",\n \"id\": \"1\"\n },\n {\n \"hourly_price_usd\": \"0.22\",\n \"capacity_gb\": 600,\n \"name\": \"600GB SAS 10000 RPM\",\n \"key\": \"SAS_557GB_10500RPM\",\n \"id\": \"2\"\n }\n ],\n \"engine_types\": [\n {\n \"id\": \"1\",\n \"hourly_price_usd\": \"0.49\",\n \"name\": \"200\",\n \"max_drives\": 5,\n \"max_cache_gb\": 80,\n \"key\": \"vsa.V2.baby.vf\",\n \"encryption_hourly_price_usd\": \"0.49\",\n \"specs\": \"1 CPU, 4GB RAM\",\n \"cache\": {\n \"base_cache_gb\": 20,\n \"max_flash_cache_gb\": 20,\n \"recommended_flash_cache_gb\": 20\n }\n }\n ],\n \"fibre_channel\": {\n \"enabled\": false\n },\n \"flash_cache\": {\n \"enabled\": true,\n \"increment_gb\": 200\n },\n \"minimum_drives\": 2,\n \"supports_app_engines\": true,\n \"zios\": {\n \"enabled\": true\n },\n \"zones\": [\n {\n \"allocation_zone_disp_name\": \"First Zone\",\n \"allocation_zone_name\": \"zone_0\"\n },\n {\n \"allocation_zone_disp_name\": \"Second Zone\",\n \"allocation_zone_name\": \"zone_1\"\n }\n ],\n \"vpsa_zone_group_storage_policy_types\": {\n \"vpsa_zone_group_storage_policy_type\": \"\\n \\\"id\\\": 4,\\n \\\"name\\\": \\\"2_way\\\",\\n \\\"replicas\\\": 2,\\n \\\"data_fragments\\\": 0,\\n \\\"parity_fragments\\\": 0\\n \"\n }\n }\n ]\n}"
},
{
"uri": "/clouds/{id}",
"method": "GET",
"description": "Get the configuration information for a single Cloud.",
"response": "\n\n success\n \n 1\n AWS US East (N. Virginia) 1\n 59af475-2a28-4eb4-b9c6-9567d7fb8ae6\n true\n \n \n true \n 1024\n 00\n 0.15\n 2 CPUs, 1GB RAM\n 2\n \n \n \n \n \n \n \n \n 0.11\n 300\n 300GB SAS 15000 RPM\n SAS_300GB_15KRPM\n 1\n \n \n 0.22\n 600\n 600GB SAS 10000 RPM\n SAS_557GB_10500RPM\n 2\n \n \n \n \n \n 1\n 0.49\n 200\n 5\n 80\n vsa.V2.baby.vf\n 0.49\n 1 CPU, 4GB RAM\n \n 20\n 20\n 20\n \n \n \n \n false\n \n \n true\n 200\n \n 2\n true\n \n true\n \n \n \n First Zone\n zone_0\n \n \n Second Zone\n zone_1\n \n \n \n \n \"id\": 4,\n \"name\": \"2_way\",\n \"replicas\": 2,\n \"data_fragments\": 0,\n \"parity_fragments\": 0\n \n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"id\": \"1\",\n \"name\": \"AWS US East (N. Virginia) 1\",\n \"uuid\": \"59af475-2a28-4eb4-b9c6-9567d7fb8ae6\",\n \"enabled\": \"true\",\n \"app_engines\": [\n {\n \"default\": \"true \",\n \"memory_mb\": \"1024\",\n \"name\": \"00\",\n \"price\": \"0.15\",\n \"specs\": \"2 CPUs, 1GB RAM\",\n \"vcpus\": \"2\"\n }\n ],\n \"nova_url\": null,\n \"auth_url\": null,\n \"keystone_url\": null,\n \"glance_url\": null,\n \"drive_types\": [\n {\n \"hourly_price_usd\": \"0.11\",\n \"capacity_gb\": 300,\n \"name\": \"300GB SAS 15000 RPM\",\n \"key\": \"SAS_300GB_15KRPM\",\n \"id\": \"1\"\n },\n {\n \"hourly_price_usd\": \"0.22\",\n \"capacity_gb\": 600,\n \"name\": \"600GB SAS 10000 RPM\",\n \"key\": \"SAS_557GB_10500RPM\",\n \"id\": \"2\"\n }\n ],\n \"engine_types\": [\n {\n \"id\": \"1\",\n \"hourly_price_usd\": \"0.49\",\n \"name\": \"200\",\n \"max_drives\": 5,\n \"max_cache_gb\": 80,\n \"key\": \"vsa.V2.baby.vf\",\n \"encryption_hourly_price_usd\": \"0.49\",\n \"specs\": \"1 CPU, 4GB RAM\",\n \"cache\": {\n \"base_cache_gb\": 20,\n \"max_flash_cache_gb\": 20,\n \"recommended_flash_cache_gb\": 20\n }\n }\n ],\n \"fibre_channel\": {\n \"enabled\": false\n },\n \"flash_cache\": {\n \"enabled\": true,\n \"increment_gb\": 200\n },\n \"minimum_drives\": 2,\n \"supports_app_engines\": true,\n \"zios\": {\n \"enabled\": true\n },\n \"zones\": [\n {\n \"allocation_zone_disp_name\": \"First Zone\",\n \"allocation_zone_name\": \"zone_0\"\n },\n {\n \"allocation_zone_disp_name\": \"Second Zone\",\n \"allocation_zone_name\": \"zone_1\"\n }\n ],\n \"vpsa_zone_group_storage_policy_types\": {\n \"vpsa_zone_group_storage_policy_type\": \"\\n \\\"id\\\": 4,\\n \\\"name\\\": \\\"2_way\\\",\\n \\\"replicas\\\": 2,\\n \\\"data_fragments\\\": 0,\\n \\\"parity_fragments\\\": 0\\n \"\n }\n }\n}"
},
{
"uri": "/clouds",
"method": "POST",
"description": "Create a cloud",
"parameters": [
{
"name": "name",
"description": "Your Cloud's name.",
"required": true,
"type": "string",
"example": "cloud1"
},
{
"name": "enabled",
"description": "cloud will be synced from provided ip",
"required": false,
"type": "boolean"
},
{
"name": "ip",
"description": "Cloud's ip address",
"required": true,
"type": "string",
"example": "1.2.3.4"
},
{
"name": "admin_user",
"description": "Cloud's admin user",
"required": true,
"type": "string",
"example": "admin"
},
{
"name": "admin_key",
"description": "Cloud's admin key",
"required": true,
"type": "string",
"example": 12345678
}
],
"response": "\n\n success\n \n 5\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"cloud_id\": \"5\"\n }\n}"
},
{
"uri": "/clouds/{id}",
"method": "POST",
"description": "Update a cloud",
"parameters": [
{
"name": "name",
"description": "Cloud name.",
"required": true,
"type": "string",
"example": "cloud1"
},
{
"name": "enabled",
"description": "cloud will be synced from provided ip",
"required": false,
"type": "boolean"
},
{
"name": "ip",
"description": "Cloud's ip address",
"required": true,
"type": "string",
"example": "1.2.3.4"
},
{
"name": "admin_user",
"description": "Cloud's admin user",
"required": true,
"type": "string",
"example": "admin"
},
{
"name": "admin_key",
"description": "Cloud's admin key",
"required": true,
"type": "string",
"example": 12345678
}
],
"response": "\n\n success\n \n 5\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"cloud_id\": \"5\"\n }\n}"
},
{
"uri": "/clouds/{id}",
"method": "DELETE",
"description": "Delete a cloud",
"response": "\n\n success\n\n",
"response_json": "{\n \"status\": \"success\"\n}"
},
{
"uri": "/clouds/{id}/drive_types",
"method": "GET",
"description": "Get the cloud's drive types.",
"response": "\n\n success\n \n \n 2\n SSD CACHE DRIVES\n 20\n 20\n \n SSD_CACHE_DRIVES\n false\n true\n \n \n \n 3\n SATA 2793GB 7200RPM\n 2793\n 2793\n \n SATA_2793GB_7200RPM\n false\n false\n \n \n \n 4\n SSD 185GB 1RPM\n 185\n 185\n \n SSD_185GB_1RPM\n true\n false\n \n \n \n 5\n SSD 744GB 1RPM\n 744\n 744\n \n SSD_744GB_1RPM\n false\n false\n \n \n \n 6\n SSD 371GB 1RPM\n 371\n 371\n \n SSD_371GB_1RPM\n false\n false\n \n \n \n 7\n SAS 136GB 15000RPM\n 136\n 136\n \n SAS_136GB_15000RPM\n false\n false\n \n \n \n 8\n SAS 278GB 15000RPM\n 278\n 278\n \n SAS_278GB_15000RPM\n false\n false\n \n \n \n 9\n SATA 7451GB 7200RPM\n 7451\n 7451\n \n SATA_7451GB_7200RPM\n false\n false\n \n \n \n 10\n SATA 5588GB 7200RPM\n 5588\n 5588\n \n SATA_5588GB_7200RPM\n false\n false\n \n \n \n 1\n SATA 2793GB 5940RPM test\n 2793\n 20\n 1.23\n SATA_2793GB_5940RPM\n false\n false\n 1\n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"drive_types\": [\n {\n \"id\": 2,\n \"name\": \"SSD CACHE DRIVES\",\n \"capacity_gb\": 20,\n \"display_capacity_gb\": 20,\n \"hourly_price_usd\": null,\n \"key\": \"SSD_CACHE_DRIVES\",\n \"enabled\": false,\n \"cache\": true,\n \"order\": null\n },\n {\n \"id\": 3,\n \"name\": \"SATA 2793GB 7200RPM\",\n \"capacity_gb\": 2793,\n \"display_capacity_gb\": 2793,\n \"hourly_price_usd\": null,\n \"key\": \"SATA_2793GB_7200RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": null\n },\n {\n \"id\": 4,\n \"name\": \"SSD 185GB 1RPM\",\n \"capacity_gb\": 185,\n \"display_capacity_gb\": 185,\n \"hourly_price_usd\": null,\n \"key\": \"SSD_185GB_1RPM\",\n \"enabled\": true,\n \"cache\": false,\n \"order\": null\n },\n {\n \"id\": 5,\n \"name\": \"SSD 744GB 1RPM\",\n \"capacity_gb\": 744,\n \"display_capacity_gb\": 744,\n \"hourly_price_usd\": null,\n \"key\": \"SSD_744GB_1RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": null\n },\n {\n \"id\": 6,\n \"name\": \"SSD 371GB 1RPM\",\n \"capacity_gb\": 371,\n \"display_capacity_gb\": 371,\n \"hourly_price_usd\": null,\n \"key\": \"SSD_371GB_1RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": null\n },\n {\n \"id\": 7,\n \"name\": \"SAS 136GB 15000RPM\",\n \"capacity_gb\": 136,\n \"display_capacity_gb\": 136,\n \"hourly_price_usd\": null,\n \"key\": \"SAS_136GB_15000RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": null\n },\n {\n \"id\": 8,\n \"name\": \"SAS 278GB 15000RPM\",\n \"capacity_gb\": 278,\n \"display_capacity_gb\": 278,\n \"hourly_price_usd\": null,\n \"key\": \"SAS_278GB_15000RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": null\n },\n {\n \"id\": 9,\n \"name\": \"SATA 7451GB 7200RPM\",\n \"capacity_gb\": 7451,\n \"display_capacity_gb\": 7451,\n \"hourly_price_usd\": null,\n \"key\": \"SATA_7451GB_7200RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": null\n },\n {\n \"id\": 10,\n \"name\": \"SATA 5588GB 7200RPM\",\n \"capacity_gb\": 5588,\n \"display_capacity_gb\": 5588,\n \"hourly_price_usd\": null,\n \"key\": \"SATA_5588GB_7200RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": null\n },\n {\n \"id\": 1,\n \"name\": \"SATA 2793GB 5940RPM test\",\n \"capacity_gb\": 2793,\n \"display_capacity_gb\": 20,\n \"hourly_price_usd\": \"1.23\",\n \"key\": \"SATA_2793GB_5940RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": 1\n }\n ]\n}"
},
{
"uri": "/clouds/{cloud_id}/drive_types/{drive_type_id}",
"method": "GET",
"description": "Get a cloud's drive type by id.",
"response": "\n\n success\n \n 1\n SATA 2793GB 5940RPM test\n 2793\n 20\n 1.23\n SATA_2793GB_5940RPM\n false\n false\n 1\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"drive_type\": {\n \"id\": 1,\n \"name\": \"SATA 2793GB 5940RPM test\",\n \"capacity_gb\": 2793,\n \"display_capacity_gb\": 20,\n \"hourly_price_usd\": \"1.23\",\n \"key\": \"SATA_2793GB_5940RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": 1\n }\n}"
},
{
"uri": "/clouds/{cloud_id}/drive_types/{drive_type_id}",
"method": "POST",
"description": "Update a cloud's drive type.",
"parameters": [
{
"name": "name",
"description": "Description.",
"type": "string",
"example": "SATA 2793GB 5940RPMM"
},
{
"name": "display_capacity",
"description": "Display capacity (GB)",
"type": "integer",
"example": 200
},
{
"name": "enabled",
"description": "Enabled.",
"type": "boolean",
"example": false
}
],
"response": "\n\n 201\n \n 1\n SATA 2793GB 5940RPMM\n 2793\n 200\n 1.23\n SATA_2793GB_5940RPM\n false\n false\n 1\n \n Successfully updated\n\n",
"response_json": "{\n \"status\": 201,\n \"data\": {\n \"id\": 1,\n \"name\": \"SATA 2793GB 5940RPMM\",\n \"capacity_gb\": 2793,\n \"display_capacity_gb\": 200,\n \"hourly_price_usd\": \"1.23\",\n \"key\": \"SATA_2793GB_5940RPM\",\n \"enabled\": false,\n \"cache\": false,\n \"order\": 1\n },\n \"message\": \"Successfully updated\"\n}"
}
]
},
{
"name": "Providers",
"description": "Retrieve Providers Configurations",
"is_ecommerce": true,
"methods": [
{
"uri": "/providers",
"method": "GET",
"description": "Get the list of available Providers and their configuration options.",
"response": "\n\n success\n \n \n 4\n provider1\n provider1\n null\n null\n null\n null\n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n {\n \"id\": \"4\",\n \"name\": \"provider1\",\n \"key\": \"provider1\",\n \"provider_group_id\": \"null\",\n \"cloud_id\": \"null\",\n \"enabled\": \"null\",\n \"hidden\": \"null\"\n }\n ]\n}"
},
{
"uri": "/providers/{id}",
"method": "GET",
"description": "Get the configuration information for a single provider.",
"response": "\n\n success\n \n 4\n provider1\n provider1\n null\n null\n null\n null\n \n\n \n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"id\": \"4\",\n \"name\": \"provider1\",\n \"key\": \"provider1\",\n \"provider_group_id\": \"null\",\n \"cloud_id\": \"null\",\n \"enabled\": \"null\",\n \"hidden\": \"null\"\n }\n}"
},
{
"uri": "/providers/{provider_id}/flavors/{flavor_key}/price",
"method": "POST",
"description": "Set the flavor price. flavor_key can be id / nova_id_{nova_id} / nova_type",
"parameters": [
{
"name": "price",
"required": true,
"type": "string",
"example": 1.1
}
],
"response": "\n\n success\n\n",
"response_json": "{\n \"status\": \"success\"\n}"
},
{
"uri": "/providers",
"method": "POST",
"description": "Create a provider",
"parameters": [
{
"name": "name",
"required": true,
"type": "string",
"example": "provider1"
},
{
"name": "key",
"required": true,
"type": "string",
"example": "provider1key"
},
{
"name": "cloud_id",
"required": true,
"example": 1,
"type": "integer"
},
{
"name": "enabled",
"required": false,
"type": "boolean"
}
],
"response": "\n\n success\n \n 5\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"provider_id\": \"5\"\n }\n}"
},
{
"uri": "/providers/{id}",
"method": "POST",
"description": "Update a provider",
"parameters": [
{
"name": "name",
"required": true,
"type": "string",
"example": "cloud1"
},
{
"name": "enabled",
"required": false,
"type": "boolean"
}
],
"response": "\n\n success\n \n 5\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"provider_id\": \"5\"\n }\n}"
},
{
"uri": "/providers/{id}",
"method": "DELETE",
"description": "Delete a provider",
"response": "\n\n success\n\n",
"response_json": "{\n \"status\": \"success\"\n}"
},
{
"uri": "/provider_groups",
"method": "GET",
"description": "Get the list of provider groups.",
"response": "\n\n success\n \n \n \n 1\n pg1\n \n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"provider_groups\": [\n {\n \"id\": \"1\",\n \"name\": \"pg1\"\n }\n ]\n }\n}"
},
{
"uri": "/provider_groups/{id}",
"method": "GET",
"description": "Get the configuration information for a single Provider Group.",
"response": "\n\n success\n \n \n 1\n pg1\n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"provider_group\": {\n \"id\": \"1\",\n \"name\": \"pg1\"\n }\n }\n}"
},
{
"uri": "/provider_groups",
"method": "POST",
"description": "Create a provider group",
"parameters": [
{
"name": "name",
"required": true,
"type": "string",
"example": "pg1"
}
],
"response": "\n\n success\n \n 5\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"provider_group_id\": \"5\"\n }\n}"
},
{
"uri": "/provider_groups/{id}",
"method": "POST",
"description": "Update a provider group",
"parameters": [
{
"name": "name",
"required": true,
"type": "string",
"example": "pg2"
}
],
"response": "\n\n success\n \n 5\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"provider_group_id\": \"5\"\n }\n}"
},
{
"uri": "/provider_groups/{id}",
"method": "DELETE",
"description": "Delete a provider group",
"response": "\n\n success\n",
"response_json": "{\n \"status\": \"success\"\n}"
}
]
},
{
"name": "Settings",
"description": "Settings",
"is_ecommerce": true,
"methods": [
{
"uri": "/settings/log_level",
"method": "GET",
"description": "Get log level",
"response": "\n\n info\n\n",
"response_json": "{\n \"log_level\": \"info\"\n}"
},
{
"uri": "/settings/log_level",
"method": "PUT",
"description": "Set Log level",
"parameters": [
{
"name": "log_level",
"required": true,
"description": "The new log level to set.",
"type": "string",
"options": "debug, info",
"example": "debug"
}
],
"response": "\n\n success\n\n",
"response_json": "{\n \"status\": \"success\"\n}"
}
]
},
{
"name": "Prices",
"is_ecommerce": true,
"methods": [
{
"uri": "/pricing",
"method": "GET",
"description": "Get the list of prices for all providers.",
"response": "\n\n success\n \n \n \n $\n provider\n QA4_Single_Zone\n QA4_Single_Zone\n 9\n \n \n 0.49\n true\n \n \n 0.99\n true\n \n \n \n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"io_engines\": {\n \"provider9\": {\n \"currency\": \"$\",\n \"type\": \"provider\",\n \"name\": \"QA4_Single_Zone\",\n \"cloud_name\": \"QA4_Single_Zone\",\n \"type_id\": 9,\n \"data\": {\n \"vsa.V2.baby.vf\": {\n \"value\": \"0.49\",\n \"available_in_cloud\": true\n },\n \"vsa.V2.baby.mz.vf\": {\n \"value\": \"0.99\",\n \"available_in_cloud\": true\n }\n }\n }\n }\n }\n}"
},
{
"uri": "/pricing",
"method": "POST",
"description": "Sets prices for a one or more providers.",
"file_upload": true,
"no_extension": true,
"no_content_type": true,
"parameters": [
{
"name": "provider_ids",
"required": true,
"type": "string",
"description": "One or more Provider ID separated by comma",
"example": 157
},
{
"name": "file",
"required": true,
"type": "file",
"example": "@/tmp/prices.json"
}
],
"response": "\n\n success\n",
"response_json": "{\n \"status\": \"success\"\n}"
}
]
},
{
"name": "VPSA",
"description": "VPSA-specific Operations",
"is_ecommerce": true,
"methods": [
{
"uri": "/vpsas",
"method": "GET",
"description": "Retrieve information about all of your VPSAs.",
"response": "\n\n success\n \n \n \n zone_0\n \n \n 0\n 0\n 20\n 1\n 20\n 1\n \n \n Small\n tiny\n 2 CPUs, 1GB RAM\n \n created\n testvpsa description\n false\n \n SAS_300GB_15KRPM\n SAS_300GB_15KRPM\n SAS_300GB_15KRPM\n \n 3\n \n Basic\n vsa.V2.small.vf\n 2 CPUs, 8GB RAM\n \n 139\n https://vsa-000003d2-aws.zadaravpsa.com\n V3JAXQV2\n 10.10.1.33\n 2653\n 2014-01-29 02:05:31\n testvpsa\n False\n \n AWS US East (N. Virginia) 1\n aws\n \n storage_array\n VPSA Storage Array\n \n false\n true\n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n {\n \"allocation_zones\": [\n \"zone_0\"\n ],\n \"cache\": {\n \"extra_gb\": 0,\n \"extra_partitions\": 0,\n \"included_gb\": 20,\n \"included_partitions\": 1,\n \"total_gb\": 20,\n \"total_partitions\": 1\n },\n \"app_engine\": {\n \"name\": \"Small\",\n \"key\": \"tiny\",\n \"specs\": \"2 CPUs, 1GB RAM\"\n },\n \"status\": \"created\",\n \"description\": \"testvpsa description\",\n \"fibre_channel\": false,\n \"drives\": [\n \"SAS_300GB_15KRPM\",\n \"SAS_300GB_15KRPM\",\n \"SAS_300GB_15KRPM\"\n ],\n \"drive_count\": 3,\n \"engine\": {\n \"name\": \"Basic\",\n \"key\": \"vsa.V2.small.vf\",\n \"specs\": \"2 CPUs, 8GB RAM\"\n },\n \"nova_id\": 139,\n \"management_url\": \"https://vsa-000003d2-aws.zadaravpsa.com\",\n \"initial_passcode\": \"V3JAXQV2\",\n \"ip_address\": \"10.10.1.33\",\n \"id\": 2653,\n \"time_created_gmt\": \"2014-01-29 02:05:31\",\n \"name\": \"testvpsa\",\n \"locked_down\": 0,\n \"provider\": {\n \"name\": \"AWS US East (N. Virginia) 1\",\n \"key\": \"aws\"\n },\n \"product\": \"storage_array\",\n \"type\": \"VPSA Storage Array\",\n \"virtual_network_interfaces\": [\n\n ],\n \"flc_enabled\": false,\n \"iscsi_dual_target_mode_enabled\": true\n }\n ]\n}"
},
{
"uri": "/vpsas/{vpsa_id}",
"method": "GET",
"description": "Retrieve information about a single VPSA.",
"response": "\n\n success\n \n \n zone_0\n \n \n 0\n 0\n 20\n 1\n 20\n 1\n \n \n 00\n 0 CPUs, 0MB RAM\n None\n \n \n 2\n \n 2\n \n \n zios_mini.vf\n ZIOS_MINI\n 6 CPUs, 18GB RAM\n \n 574\n Nh10wgP4\n vsa-00000151\n false\n false\n vsa-00000151-zadara-web1.zadarazios.com\n 172.16.14.204\n \n arye_zios_aas\n 337\n \n zadaraweb1\n zadara-web1\n \n created\n 0\n 2\n \n \n 2-Way-Protection\n storage-policy-00000001\n 2\n 1\n 2_way\n 0\n 0\n \n \n \n 17\n 574\n zios_admin\n admin\n localhost:15100\n vsa-00000136-zadara-web1.zadarazios.com\n false\n \n \n 2021-04-07 13-54-49\n object_storage\n VPSA Object Storage\n false\n true\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"allocation_zones\": [\n \"zone_0\"\n ],\n \"cache\": {\n \"extra_gb\": 0,\n \"extra_partitions\": 0,\n \"included_gb\": 20,\n \"included_partitions\": 1,\n \"total_gb\": 20,\n \"total_partitions\": 1\n },\n \"app_engine\": {\n \"name\": \"00\",\n \"specs\": \"0 CPUs, 0MB RAM\",\n \"type\": \"None\"\n },\n \"description\": null,\n \"drive_count\": 2,\n \"drives\": {\n \"SATA_2793GB_5940RPM\": 2\n },\n \"engine\": {\n \"key\": \"zios_mini.vf\",\n \"name\": \"ZIOS_MINI\",\n \"specs\": \"6 CPUs, 18GB RAM\"\n },\n \"id\": 574,\n \"initial_passcode\": \"Nh10wgP4\",\n \"internal_name\": \"vsa-00000151\",\n \"fibre_channel\": false,\n \"locked_down\": false,\n \"management_url\": \"vsa-00000151-zadara-web1.zadarazios.com\",\n \"ip_address\": \"172.16.14.204\",\n \"ipv6_address\": null,\n \"name\": \"arye_zios_aas\",\n \"nova_id\": 337,\n \"provider\": {\n \"key\": \"zadaraweb1\",\n \"name\": \"zadara-web1\"\n },\n \"status\": \"created\",\n \"proxy_virtual_controllers\": 0,\n \"proxy_storage_virtual_controllers\": 2,\n \"storage_policies\": [\n {\n \"display_name\": \"2-Way-Protection\",\n \"policy_name\": \"storage-policy-00000001\",\n \"replicas\": 2,\n \"sp_type_id\": 1,\n \"storage_policy_type\": \"2_way\",\n \"data_fragments\": 0,\n \"parity_fragments\": 0\n }\n ],\n \"public_zios\": {\n \"id\": 17,\n \"vpsa_id\": 574,\n \"account_name\": \"zios_admin\",\n \"username\": \"admin\",\n \"ip\": \"localhost:15100\",\n \"host\": \"vsa-00000136-zadara-web1.zadarazios.com\",\n \"auto_approve\": false\n },\n \"virtual_network_interfaces\": [\n\n ],\n \"time_created_gmt\": \"2021-04-07 13-54-49\",\n \"product\": \"object_storage\",\n \"type\": \"VPSA Object Storage\",\n \"flc_enabled\": false,\n \"iscsi_dual_target_mode_enabled\": true\n }\n}"
},
{
"uri": "/vpsas",
"method": "POST",
"description": "Create a VPSA Storage Array.",
"parameters": [
{
"name": "name",
"description": "Your VPSA's name.",
"required": true,
"type": "string",
"example": "vpsa1"
},
{
"name": "moderate",
"description": "Create vpsa request.",
"required": true,
"type": "boolean",
"example": "false"
},
{
"name": "description",
"description": "Your VPSA's description.",
"required": false,
"type": "string"
},
{
"name": "provider",
"description": "The key for your desired Provider (Cloud).",
"required": true,
"type": "string",
"example": "aws"
},
{
"name": "allocation_zone",
"description": "Use this parameter to create vcs in a specific allocation zone. use /providers API to get allocation zones. If using multiple zones , don't pass this parameter",
"type": "string",
"example": "zone_0"
},
{
"name": "engine",
"description": "The Engine Type key for your desired Engine Type.",
"required": true,
"type": "string",
"example": "vsa.V2.baby.mz.vf"
},
{
"name": "app_engine",
"description": "The APP Engine Type key for your desired APP Engine Type.",
"type": "string",
"example": "tiny"
},
{
"name": "enterprise_suite",
"description": "Any value for this parameter will enable Enterprise Suite features. Omit the parameter to disable Enterprise Suite.",
"required": false,
"type": "string"
},
{
"name": "fibre_channel",
"description": "Any value for this parameter will enable Fibre Channel, if the Cloud supports it. Omit this parameter to disable Fibre Channel.",
"required": false,
"type": "string"
},
{
"name": "flc_enabled",
"description": "Any value for this parameter will enable File Lifecycle, if the Cloud supports it. Omit this parameter to disable File Lifecycle.",
"required": false,
"type": "string"
},
{
"name": "iscsi_dual_target_mode_enabled",
"description": "Any value for this parameter will enable iSCSI Dual Target, if the Cloud supports it. Omit this parameter to disable iSCSI Dual Target.",
"required": false,
"type": "string"
},
{
"name": "flash_cache_capacity",
"description": "The amount of extended Flash Cache you would like your VPSA to be created with, if your Cloud supports extended Flash Cache. Cannot exceed the maximum extended Flash Cache value for your VPSA's Engine Type, and must be in increments of `increment_gb`, as specified by the Cloud's `flash_cache` properties.",
"required": false,
"example": "0",
"type": "integer"
},
{
"name": "drives",
"description": "Specify a quantity for an available Drive Type.",
"required": true,
"type": "json",
"example": "{\"SATA_2793GB_7200RPM\": 2, \"SSD_7152GB_1RPM\": 4}"
},
{
"name": "custom_network_id",
"description": "Specify a custom network according. If not specified and user has only one Custom Network, it will be automatically used.",
"required": false,
"type": "integer"
},
{
"name": "vlan_id",
"description": "Specify a vlan ID",
"required": false,
"type": "integer"
},
{
"name": "create_raid_10_pools",
"description": "VPSA will automatically create a Pool consisting of RAID10 from requested disks. Default - true.",
"required": false,
"type": "boolean"
},
{
"name": "data_reduction_bundle",
"description": "Sets Data Reduction Bundle for Flash VPSAs (relevant only to vpsa flash array). Default - true.",
"required": false,
"type": "boolean"
}
],
"response": "\n\n \n creating\n \n zone_0\n \n \n Basic\n vsa.V2.small.vf\n 2 CPUs, 8GB RAM\n \n testvpsa description\n \n V3JAXQV2\n 3\n \n \n 2014-01-29 02:05:31\n testvpsa\n \n 1\n 20\n 20\n 1\n \n Z2\n False\n \n AWS US East (N. Virginia) 1\n aws\n \n \n\n",
"response_json": "{\n \"data\": {\n \"status\": \"creating\",\n \"allocation_zones\": [\n \"zone_0\"\n ],\n \"engine\": {\n \"name\": \"Basic\",\n \"key\": \"vsa.V2.small.vf\",\n \"specs\": \"2 CPUs, 8GB RAM\"\n },\n \"description\": \"testvpsa description\",\n \"management_url\": null,\n \"initial_passcode\": \"V3JAXQV2\",\n \"drive_count\": 3,\n \"ip_address\": null,\n \"id\": null,\n \"time_created_gmt\": \"2014-01-29 02:05:31\",\n \"name\": \"testvpsa\",\n \"cache\": {\n \"total_partitions\": 1,\n \"total_gb\": 20,\n \"gb_from_engine\": 20,\n \"partitions_from_engine\": 1\n },\n \"version\": \"Z2\",\n \"locked_down\": 0,\n \"provider\": {\n \"name\": \"AWS US East (N. Virginia) 1\",\n \"key\": \"aws\"\n }\n }\n}"
},
{
"uri": "/vpsas",
"method": "POST",
"description": "Create a VPSA Object Storage.",
"parameters": [
{
"name": "name",
"description": "Your VPSA's name.",
"required": true,
"type": "string",
"example": "vpsa1"
},
{
"name": "moderate",
"description": "Create vpsa request.",
"required": true,
"type": "boolean",
"example": "false"
},
{
"name": "description",
"description": "Your VPSA's description.",
"required": false,
"type": "string"
},
{
"name": "provider",
"type": "string",
"description": "The key for your desired Provider (Cloud).",
"required": true,
"example": "aws"
},
{
"name": "kind",
"type": "string",
"required": true,
"example": "object_storage",
"description": "The key for your desired Cloud (Provider)."
},
{
"name": "vpsa_zone_group_storage_policy_type_id",
"description": "Storage policy id. See `storage_policies` under the Cloud's API.",
"type": "integer",
"example": 2
},
{
"name": "drives",
"description": "Specify a quantity for an available Drive Type.",
"required": true,
"type": "json",
"example": "{\"SATA_2793GB_7200RPM\": 2}"
},
{
"name": "allocation_zone",
"description": "Use this parameter to create vcs in a specific allocation zone. Use /providers API to get allocation zones. If using multiple zones , don't pass this parameter",
"type": "string",
"example": "zone_0"
},
{
"name": "storage_profile",
"description": null,
"type": "string",
"example": "standard"
}
],
"response": "\n\n \n creating\n \n zone_0\n \n \n Basic\n vsa.V2.small.vf\n 2 CPUs, 8GB RAM\n \n testvpsa description\n \n V3JAXQV2\n 3\n \n \n 2014-01-29 02:05:31\n vpsa1\n \n 1\n 20\n 20\n 1\n \n Z2\n False\n \n AWS US East (N. Virginia) 1\n aws\n \n \n\n",
"response_json": "{\n \"data\": {\n \"status\": \"creating\",\n \"allocation_zones\": [\n \"zone_0\"\n ],\n \"engine\": {\n \"name\": \"Basic\",\n \"key\": \"vsa.V2.small.vf\",\n \"specs\": \"2 CPUs, 8GB RAM\"\n },\n \"description\": \"testvpsa description\",\n \"management_url\": null,\n \"initial_passcode\": \"V3JAXQV2\",\n \"drive_count\": 3,\n \"ip_address\": null,\n \"id\": null,\n \"time_created_gmt\": \"2014-01-29 02:05:31\",\n \"name\": \"vpsa1\",\n \"cache\": {\n \"total_partitions\": 1,\n \"total_gb\": 20,\n \"gb_from_engine\": 20,\n \"partitions_from_engine\": 1\n },\n \"version\": \"Z2\",\n \"locked_down\": 0,\n \"provider\": {\n \"name\": \"AWS US East (N. Virginia) 1\",\n \"key\": \"aws\"\n }\n }\n}"
},
{
"uri": "/vpsas/{vpsa_id}/engine",
"method": "POST",
"description": "Change a VPSA's Zadara Engine.",
"parameters": [
{
"name": "engine",
"description": "The Engine Type key for your desired Engine Type.",
"required": true,
"type": "string",
"example": "vsa.V2.small.vf"
},
{
"name": "app_engine",
"description": "The APP Engine Type key for your desired APP Engine Type.",
"required": true,
"type": "string",
"example": "tiny"
}
],
"response": "\n\n success\n Zadara Engine change to Boost for VPSA testvpsa submitted. \n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \" Zadara Engine change to Boost for VPSA testvpsa submitted. \"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/cache",
"method": "POST",
"description": "Change a VPSA's extended flash cache capacity.",
"parameters": [
{
"name": "flash_cache_capacity",
"description": "Amount of extended flash (in 200GB steps).",
"required": true,
"type": "integer",
"example": 200
}
],
"response": "\n\n success\n A request has been dispatched to the Zadara Storage team, which must be approved before your cache can be added. You will be notified when this is completed.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"A request has been dispatched to the Zadara Storage team, which must be approved before your cache can be added. You will be notified when this is completed.\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/drives",
"method": "POST",
"description": "Add additional storage to a VPSA.",
"parameters": [
{
"name": "drives",
"description": "Specify a quantity for an available Drive Type. (Only 1 drive type allowed for VPSA Object Storage)",
"required": true,
"type": "json",
"example": "{\"SATA_2793GB_7200RPM\" : 2}"
},
{
"name": "storage_policy",
"description": "Storage Policy Name. (Only for VPSA Object Storage)",
"required": true,
"type": "string",
"example": "storage-policy-00000001"
}
],
"response": "\n\n success\n Adding drives.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Adding drives.\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/hibernate",
"method": "POST",
"description": "Hibernate a VPSA.",
"response": "\n\n success\n VPSA being put into hibernating state.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"VPSA being put into hibernating state.\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/restore",
"method": "POST",
"description": "Restore a VPSA from hibernating state.",
"response": "\n\n success\n VPSA restoring.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"VPSA restoring.\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/storage_policy",
"method": "POST",
"description": "Add a storage policy to a VPSA object storage.",
"parameters": [
{
"name": "name",
"description": "Storage Policy Name.",
"required": true,
"type": "string",
"example": "p1"
},
{
"name": "storage_policy_type",
"description": "Storage Policy Type Id.",
"required": true,
"type": "integer",
"example": 2
},
{
"name": "drives",
"description": "Specify a quantity for an available Drive Type.",
"required": true,
"type": "json",
"example": "{\"SATA_2793GB_7200RPM\": 2}"
}
]
},
{
"uri": "/vpsas/{vpsa_id}/proxy_vcs/add",
"method": "POST",
"description": "Add a proxy Virtual Controller to a VPSA Object storage.",
"parameters": [
{
"name": "allocation_zone_id",
"description": "Allocation Zone Id.",
"required": true,
"type": "integer",
"example": 1
}
],
"response": "\n\n success\n Your request to add a proxy Virtual Controller has been submited for admin approval.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Your request to add a proxy Virtual Controller has been submited for admin approval.\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/public_ip",
"method": "POST",
"description": "Assign a public IP to a VPSA.",
"response": "\n\n success\n Public IP added successfully.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Public IP added successfully.\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/public_ip",
"method": "DELETE",
"description": "Remove a public IP from a VPSA.",
"response": "\n\n success\n Public IP removed successfully.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Public IP removed successfully.\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/compatible_vnis",
"method": "GET",
"description": "Return a list of compatible Virtual Network Interface for a VPSA.",
"response": "\n\n success\n \n \n vir1\n 58\n 31\n 255.255.255.0\n 10.22.33.0/24\n 10.22.33.1\n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n {\n \"name\": \"vir1\",\n \"vlan\": 58,\n \"custom_network_id\": 31,\n \"netmask\": \"255.255.255.0\",\n \"cidr\": \"10.22.33.0/24\",\n \"gateway\": \"10.22.33.1\"\n }\n ]\n}"
},
{
"uri": "/vpsas/{vpsa_id}/add_vni",
"method": "POST",
"description": "Add a Virtual Network Interface to a VPSA.",
"parameters": [
{
"name": "virtual_network_id",
"description": "Virtual Network ID.",
"required": true,
"type": "interger",
"example": 11
}
],
"response": "\n\n 0\n Add Virtual Network Interface Request Sent\n\n",
"response_json": "{\n \"status\": 0,\n \"message\": \"Add Virtual Network Interface Request Sent\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/remove_vni",
"method": "POST",
"description": "Remove a Virtual Network Interface from a VPSA.",
"parameters": [
{
"name": "vni_ids",
"description": "Virtual Network Interfaces IDs.",
"required": true,
"type": "array",
"example": [
1
]
}
],
"response": "\n\n 0\n Remove Virtual Network Interface Request Sent\n\n",
"response_json": "{\n \"status\": 0,\n \"message\": \"Remove Virtual Network Interface Request Sent\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/enable_data_reduction",
"method": "POST",
"description": "Enables data reduction bundle on a Flash VPSA.",
"response": "\n\n success\n Data Reduction Bundle will be available momentarily\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Data Reduction Bundle will be available momentarily\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/disable_data_reduction_bundle",
"method": "POST",
"description": "Disables data reduction bundle on a Flash VPSA.",
"response": "\n\n success\n Data Reduction Bundle disabled\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Data Reduction Bundle disabled\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}",
"method": "DELETE",
"description": "Delete a VPSA.",
"response": "\n\n success\n Deletion request for VPSA testvpsa received.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Deletion request for VPSA testvpsa received.\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/public_zios",
"method": "POST",
"description": "Enable object account service for an existing VPSA Object Storage.",
"parameters": [
{
"name": "account_name",
"description": "The Object Storage admin account.",
"required": true,
"type": "string",
"example": "zios_admin"
},
{
"name": "admin_username",
"description": "The Object Storage admin username.",
"required": true,
"type": "string",
"example": "admin"
},
{
"name": "admin_password",
"description": "The Object Storage admin password.",
"required": true,
"type": "string",
"example": "secretpass"
},
{
"name": "ip",
"description": "The Object Storage ip and port.",
"required": true,
"type": "string",
"example": "1.2.3.4:11111"
},
{
"name": "host",
"description": "The Object Storage host name.",
"required": true,
"type": "string",
"example": "vsa-00000151-zadara-web1.zadarazios.com"
},
{
"name": "auto_approve",
"description": "Indicates wether to automatically approve account creation requests. False by default.",
"type": "boolean"
}
],
"response": "\n\n Success\n \n 20\n 574\n zios_admin\n admin\n localhost:15100\n aaa.com\n false\n 0.0\n \n Successfully created\n\n",
"response_json": "{\n \"status\": \"Success\",\n \"data\": {\n \"id\": 20,\n \"vpsa_id\": 574,\n \"account_name\": \"zios_admin\",\n \"username\": \"admin\",\n \"ip\": \"localhost:15100\",\n \"host\": \"aaa.com\",\n \"auto_approve\": false,\n \"price\": \"0.0\"\n },\n \"message\": \"Successfully created\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/public_zios",
"method": "PUT",
"description": "Update object account service on an existing VPSA Object Storage.",
"parameters": [
{
"name": "account_name",
"description": "The Object Storage admin account.",
"type": "string",
"example": "zios_admin"
},
{
"name": "admin_username",
"description": "The Object Storage admin username.",
"type": "string",
"example": "admin"
},
{
"name": "admin_password",
"description": "The Object Storage admin password.",
"type": "string",
"example": "secretpass"
},
{
"name": "ip",
"description": "The Object Storage ip and port.",
"type": "string",
"example": "1.2.3.4:11111"
},
{
"name": "host",
"description": "The Object Storage host name.",
"type": "string",
"example": "vsa-00000151-zadara-web1.zadarazios.com"
},
{
"name": "auto_approve",
"description": "Indicates wether to automatically approve account creation requests.",
"type": "boolean",
"example": true
}
],
"response": "\n\n 200\n \n 20\n 574\n zios_admin\n admin\n localhost:15100\n aaa.com\n false\n 0.0\n \n Successfully updated\n\n",
"response_json": "{\n \"status\": 200,\n \"data\": {\n \"id\": 20,\n \"vpsa_id\": 574,\n \"account_name\": \"zios_admin\",\n \"username\": \"admin\",\n \"ip\": \"localhost:15100\",\n \"host\": \"aaa.com\",\n \"auto_approve\": false,\n \"price\": \"0.0\"\n },\n \"message\": \"Successfully updated\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/public_zios",
"method": "GET",
"description": "Get object account service for an existing VPSA Object Storage.",
"response": "\n\n success\n \n 20\n 574\n zios_admin\n admin\n localhost:15100\n aaa.com\n false\n 0.0\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"id\": 20,\n \"vpsa_id\": 574,\n \"account_name\": \"zios_admin\",\n \"username\": \"admin\",\n \"ip\": \"localhost:15100\",\n \"host\": \"aaa.com\",\n \"auto_approve\": false,\n \"price\": \"0.0\"\n }\n}"
},
{
"uri": "/vpsas/{vpsa_id}/public_zios",
"method": "DELETE",
"description": "Disable object account service from an existing VPSA Object Storage.",
"response": "\n\n Success\n\n",
"response_json": "{\n \"status\": \"Success\"\n}"
},
{
"uri": "/vpsas/{vpsa_id}/accounts",
"method": "POST",
"description": "Create a new object storage account.",
"parameters": [
{
"name": "object_storage_account_name",
"description": "The new account name.",
"required": true,
"type": "string",
"example": "my_account"
},
{
"name": "object_storage_admin_username",
"description": "The new account administrator username. The administrator user will be created with the account.",
"required": true,
"type": "string",
"example": "admin"
},
{
"name": "object_storage_admin_password",
"description": "The new account administrator password. The administrator user will be created with the account.",
"required": true,
"type": "string",
"example": "secretpass"
},
{
"name": "user_id",
"description": "The ID of the user that creates the account.",
"required": true,
"type": "integer",
"example": 1
},
{
"name": "moderate",
"description": "When false, the account will be immediately created. When true, only a request will be created and it should be approved by an administrator. Default is false. Usable only for administrator or auto-approved user.",
"type": "boolean",
"example": false
}
],
"response": "\n\n Success\n Object Storage Account acc21 created. Email with details sent to qa@zadarastorage.com\n \n 47\n 574\n 1\n acc21\n created\n 2\n \n \n \n 2021-04-07T16:46:12Z\n 2021-04-07T16:46:35Z\n \n\n",
"response_json": "{\n \"status\": \"Success\",\n \"message\": \"Object Storage Account acc21 created. Email with details sent to qa@zadarastorage.com\",\n \"data\": {\n \"id\": 47,\n \"vpsa_id\": 574,\n \"user_id\": 1,\n \"account_name\": \"acc21\",\n \"status\": \"created\",\n \"zios_request_id\": 2,\n \"used_capacity\": null,\n \"containers_count\": null,\n \"objects_count\": null,\n \"created_at\": \"2021-04-07 16:46:12 UTC\",\n \"updated_at\": \"2021-04-07 16:46:35 UTC\"\n }\n}"
},
{
"uri": "/vpsas/{vpsa_id}/accounts/{account_id}",
"method": "GET",
"description": "Get an object storage account details.",
"response": "\n\n Success\n \n 48\n 574\n 1\n acc22\n created\n 3\n 0.0\n 0\n 0\n 2021-04-07T16:48:59Z\n 2021-04-07T16:50:00Z\n \n\n",
"response_json": "{\n \"status\": \"Success\",\n \"data\": {\n \"id\": 48,\n \"vpsa_id\": 574,\n \"user_id\": 1,\n \"account_name\": \"acc22\",\n \"status\": \"created\",\n \"zios_request_id\": 3,\n \"used_capacity\": 0.0,\n \"containers_count\": 0,\n \"objects_count\": 0,\n \"created_at\": \"2021-04-07 16:48:59 UTC\",\n \"updated_at\": \"2021-04-07 16:50:00 UTC\"\n }\n}"
},
{
"uri": "/vpsas/{vpsa_id}/accounts/",
"method": "GET",
"description": "Get all object storage accounts for a given VPSA Object Storage.",
"response": "\n\n Success\n \n \n 48\n 574\n 1\n acc22\n created\n 3\n 0.0\n 0\n 0\n 2021-04-07T16:48:59Z\n 2021-04-07T16:50:00Z\n \n \n 49\n 574\n 1\n acc23\n waiting_for_approval\n 4\n \n \n \n 2021-04-07T16:51:57Z\n 2021-04-07T16:51:57Z\n \n \n\n",
"response_json": "{\n \"status\": \"Success\",\n \"data\": [\n {\n \"id\": 48,\n \"vpsa_id\": 574,\n \"user_id\": 1,\n \"account_name\": \"acc22\",\n \"status\": \"created\",\n \"zios_request_id\": 3,\n \"used_capacity\": 0.0,\n \"containers_count\": 0,\n \"objects_count\": 0,\n \"created_at\": \"2021-04-07 16:48:59 UTC\",\n \"updated_at\": \"2021-04-07 16:50:00 UTC\"\n },\n {\n \"id\": 49,\n \"vpsa_id\": 574,\n \"user_id\": 1,\n \"account_name\": \"acc23\",\n \"status\": \"waiting_for_approval\",\n \"zios_request_id\": 4,\n \"used_capacity\": null,\n \"containers_count\": null,\n \"objects_count\": null,\n \"created_at\": \"2021-04-07 16:51:57 UTC\",\n \"updated_at\": \"2021-04-07 16:51:57 UTC\"\n }\n ]\n}"
},
{
"uri": "/vpsas/{vpsa_id}/accounts/{account_id}",
"method": "DELETE",
"description": "Generates a request to remove an object storage account from a VPSA Object Storage.",
"response": "\n\n Success\n 613\n\n",
"response_json": "{\n \"status\": \"Success\",\n \"vpsa_request_id\": 613\n}"
}
]
},
{
"name": "Vpsa Requests",
"description": "Vpsa Requests Actions",
"is_ecommerce": true,
"methods": [
{
"uri": "/vpsa_requests",
"method": "GET",
"description": "Get the list of vpsa_requests.",
"response": "\n\n success\n \n \n 1\n pg1\n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n {\n \"id\": \"1\",\n \"name\": \"pg1\"\n }\n ]\n}"
},
{
"uri": "/vpsa_requests/{id}",
"method": "GET",
"description": "Get the configuration information for a single Vpsa Request.",
"response": "\n\n success\n \n 1\n pg1\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"id\": \"1\",\n \"name\": \"pg1\"\n }\n}"
},
{
"uri": "/vpsa_requests/{id}/approve",
"method": "POST",
"description": "Approve a vpsa request",
"parameters": [
{
"name": "name",
"required": true,
"type": "string",
"example": "pg2"
}
],
"response": "\n\n success\n \n 5\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"vpsa_request_id\": \"5\"\n }\n}"
},
{
"uri": "/vpsa_requests/{id}/deny",
"method": "POST",
"description": "Deny a vpsa request",
"parameters": [
{
"name": "reason",
"required": true,
"type": "string",
"example": "drives unavailable"
}
],
"response": "\n\n success\n \n 5\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": {\n \"vpsa_request_id\": \"5\"\n }\n}"
},
{
"uri": "/vpsa_requests/{id}",
"method": "DELETE",
"description": "Delete a vpsa request",
"response": "\n\n success\n",
"response_json": "{\n \"status\": \"success\"\n}"
}
]
},
{
"name": "Compute",
"description": "Compute accounts operations",
"is_ecommerce": true,
"methods": [
{
"uri": "/computes",
"method": "POST",
"description": "Create Compute Account",
"parameters": [
{
"name": "provider_id",
"description": "Your Cloud's id.",
"required": true,
"type": "integer",
"example": 1
},
{
"name": "display_name",
"description": "Compute Account Name.",
"required": true,
"type": "string",
"example": "test_account"
},
{
"name": "display_description",
"description": "Compute Account Description.",
"type": "string",
"example": "test_account description"
},
{
"name": "cores",
"description": "CPU cores limit.",
"type": "integer",
"default": 64,
"example": 32
},
{
"name": "ram",
"description": "RAM limit.",
"type": "integer",
"default": 238,
"example": 200
},
{
"name": "instances",
"description": "Instances limit.",
"type": "integer",
"default": 10,
"example": 10
},
{
"name": "moderate",
"type": "boolean",
"example": "false"
}
],
"response": "\n\n success\n Compute created successfully\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Compute created successfully\"\n}"
}
]
},
{
"name": "Tenant",
"description": "Retrieve Tenants information",
"is_ecommerce": true,
"methods": [
{
"uri": "/tenants",
"method": "GET",
"description": "Get the list of tenants",
"response": "\n\n success\n \n \n 7\n 2\n test1\n tenant_test1_bd8Bs\n 2\n 8\n \n \n 1\n 2\n test2\n tenant_test2_DuJN3\n 1\n 2\n \n \n 8\n 2\n test3\n tenant_test3_oqKWi\n 3\n 9\n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n {\n \"id\": 7,\n \"user_id\": 2,\n \"username\": \"test1\",\n \"name\": \"tenant_test1_bd8Bs\",\n \"provider_id\": 2,\n \"internal_id\": 8\n },\n {\n \"id\": 1,\n \"user_id\": 2,\n \"username\": \"test2\",\n \"name\": \"tenant_test2_DuJN3\",\n \"provider_id\": 1,\n \"internal_id\": 2\n },\n {\n \"id\": 8,\n \"user_id\": 2,\n \"username\": \"test3\",\n \"name\": \"tenant_test3_oqKWi\",\n \"provider_id\": 3,\n \"internal_id\": 9\n }\n ]\n}"
}
]
},
{
"name": "Vlan",
"description": "Retrieve Vlan's Configurations",
"is_ecommerce": true,
"methods": [
{
"uri": "/vlans",
"method": "GET",
"description": "Get the list of available vlans.",
"response": "\n\n success\n \n \n false\n 1\n 1\n 50\n \n vni_test16\n \n \n testvpsa\n \n \n \n false\n 1\n 1\n 54\n \n \n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n {\n \"default\": false,\n \"cloud_id\": 1,\n \"provider_id\": 1,\n \"vlan_id\": 50,\n \"custom_networks\": [\n \"vni_test16\"\n ],\n \"vpsas\": [\n \"testvpsa\"\n ]\n },\n {\n \"default\": false,\n \"cloud_id\": 1,\n \"provider_id\": 1,\n \"vlan_id\": 54,\n \"custom_networks\": [\n\n ],\n \"vpsas\": [\n\n ]\n }\n ]\n}"
},
{
"uri": "/vlans/available_vlans_for_provider",
"method": "GET",
"description": "Get list of available vlans",
"parameters": [
{
"name": "provider_id",
"description": "Your Cloud's name.",
"required": true,
"type": "integer",
"example": 1
}
],
"response": "\n\n success\n \n 60\n 62\n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n 60,\n 62\n ]\n}"
},
{
"uri": "/vlans/allocate",
"method": "POST",
"description": "Allocate a vlan",
"parameters": [
{
"name": "provider_id",
"required": true,
"type": "integer",
"example": 1
},
{
"name": "vlan",
"required": true,
"type": "integer",
"example": 50
}
],
"response": "\n\n success\n Your request has been submitted for processing.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Your request has been submitted for processing.\"\n}"
},
{
"uri": "/vlans/deallocate",
"method": "POST",
"description": "Deallocate a vlan",
"parameters": [
{
"name": "provider_id",
"required": true,
"type": "integer",
"example": 1
},
{
"name": "vlan",
"required": true,
"type": "integer",
"example": 1
}
],
"response": "\n\n success\n Your request has been submitted for processing.\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Your request has been submitted for processing.\"\n}"
},
{
"uri": "/vlans/set_as_default",
"method": "POST",
"description": "Set vlan as default",
"parameters": [
{
"name": "provider_id",
"required": true,
"type": "integer",
"example": 1
},
{
"name": "vlan",
"required": true,
"type": "integer",
"example": 50
}
],
"response": "\n\n success\n VLAN was set as deafult for provider zadara-web1\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"VLAN was set as deafult for provider zadara-web1\"\n}"
}
]
},
{
"name": "Virtual Network",
"description": "Retrieve Vlan's Configurations",
"is_ecommerce": true,
"methods": [
{
"uri": "/virtual_networks",
"method": "GET",
"description": "Get the list of virtual networks.",
"response": "\n\n success\n \n \n 24\n vni_test16\n 50\n 1\n 1\n \n \n\n",
"response_json": "{\n \"status\": \"success\",\n \"data\": [\n {\n \"id\": 24,\n \"name\": \"vni_test16\",\n \"vlan_id\": 50,\n \"tenant_id\": 1,\n \"provider_id\": 1\n }\n ]\n}"
},
{
"uri": "/virtual_networks",
"method": "POST",
"description": "Creates a virtual network",
"parameters": [
{
"name": "name",
"type": "string",
"example": "mynetwork",
"required": true
},
{
"name": "provider_id",
"type": "string",
"example": 1,
"required": true
},
{
"name": "tenant_id",
"type": "string",
"example": 1,
"required": true
},
{
"name": "gateway",
"type": "string",
"example": "170.70.1.1",
"required": false
},
{
"name": "gateway_zone_1",
"type": "string",
"example": "170.70.1.1",
"required": false
},
{
"name": "ipv6_gateway",
"type": "string",
"example": "2001:16:58::1",
"required": false
},
{
"name": "ipv6_gateway_zone_1",
"type": "string",
"example": "2001:16:58::1",
"required": false
},
{
"name": "cidr",
"type": "string",
"example": "170.70.1.0/24",
"required": false
},
{
"name": "ipv6_cidr",
"type": "string",
"example": "2001:16:58::/32",
"required": false
},
{
"name": "allocatable_ip_ranges",
"type": "string",
"example": "170.70.1.2-170.70.1.50",
"required": false
},
{
"name": "ipv6_allocatable_ip_ranges",
"type": "string",
"example": "2001:16:58::2-2001:16:58::52",
"required": false
},
{
"name": "vlan_id",
"description": "To automatically assign use \"vlan_id\":\"\"",
"type": "integer",
"example": 50,
"required": false
},
{
"name": "default_for_tenant",
"type": "boolean",
"required": false
}
]
},
{
"uri": "/virtual_networks/{id}",
"method": "DELETE",
"description": "Delete a virtual network",
"parameters": [
{
"name": "provider_id",
"required": true,
"type": "integer",
"example": 1
},
{
"name": "vlan",
"required": true,
"type": "integer",
"example": 50
}
],
"response": "\n\n success\n Virtual Network successfully deleted\n\n",
"response_json": "{\n \"status\": \"success\",\n \"message\": \"Virtual Network successfully deleted\"\n}"
}
]
},
{
"name": "Billing",
"description": "Operations involving billing",
"is_ecommerce": true,
"methods": [
{
"uri": "/billing_items",
"method": "GET",
"description": "Download Billing Reports. The returned file is in zip format containing csv files.",
"redirection": "/tmp/billing_info.zip",
"parameters": [
{
"name": "start_datetime",
"description": "Report start datetime in format yyyy-MM-DD HH:MM",
"required": true,
"type": "string",
"example": "2019-04-18 09:29"
},
{
"name": "end_datetime",
"description": "Report end datetime in format yyyy-MM-DD HH:MM",
"required": true,
"type": "string",
"example": "2019-05-13 09:30"
},
{
"name": "user_id",
"description": "Filter reports of a specific user",
"required": false,
"type": "string",
"example": "3250"
}
]
}
]
}
],
"intro": "
Overview
\n\nThis document outlines the methods available for creation and high-level administration of Zadara Storage VPSAs via a Zadara Storage Provisioning Portal. This API supports form-encoded requests, and can return either JSON or XML responses.
\n\nEndpoint
\n\nThe base URL for the requests is the Provisioning Portal URL you created your VPSA through - for example: https://manage.zadarastorage.com/, and all APIs will be prefixed with /api
as noted in the documentation below.
\n\nAuthentication
\n\nTo use this API, an authentication token is required. The API for retrieving this token can be found below in the Authentication section. You may pass this token in requests either via the the X-Token
header or via basic authentication (base64 encoded) in Authorization
header.
\n\nQuestions
\n\nIf you have any questions or need support involving the REST API, please contact support@zadarastorage.com for assistance.
\n"
};