### Example JSON Response for Deployment Source: https://cloud.docs.scylladb.com/stable/api.html An example JSON structure representing deployment details, including instance information and costs. ```json { "error": "040101", "data": { "defaultInstanceId": 1, "instances": [ { "id": 40, "externalId": "n2-highmem-2", "cloudProviderId": 2, "groupDefault": true, "displayOrder": 3, "memory": 16384, "localDiskCount": 1, "totalStorage": 375, "cpuCount": 2, "networkSpeed": 10, "networkSpeedDescription": "Maximum egress bandwidth, 10 Gbps", "baseNetworkSpeed": 5, "externalStorageNetworkSpeed": 0, "costPerHour": 0, "environment": "PRODUCTION", "licenseCostOnDemandPerHour": 0, "subscriptionCostHourly": 0.0956, "subscriptionCostHourlyXCloud": 0.12, "subscriptionCostHourlyXCloudBYOA": 0.15, "subscriptionCostMonthly": 54, "subscriptionCostMonthlyXCloud": 65, "subscriptionCostYearly": 560, "subscriptionCostYearlyXCloud": 650, "instanceCostHourly": 0.03, "instanceFamily": "n2", "freeTier": true } ] } } ``` -------------------------------- ### Get Vector Search Nodes Response Example Source: https://cloud.docs.scylladb.com/stable/api.html Example JSON response detailing the status and configuration of vector search nodes, including availability zones, node health, and resource utilization. ```json { "availabilityZones": [ { "azid": "use1-az5", "rackName": "use1-az5", "nodes": [ { "id": 125, "instanceTypeId": 175, "status": "ACTIVE", "up": true, "cpu": { "usagePercent": 0 }, "memory": { "freeGiB": 0, "usagePercent": 0 }, "indexCount": 0 } ] } ], "status": "HEALTHY" } ``` -------------------------------- ### Example JSON Response for Pricing Search Source: https://cloud.docs.scylladb.com/stable/api.html An example JSON structure for pricing search results, detailing SKU, infrastructure, product, commercial terms, and estimated pricing. ```json { "items": [ { "skuId": "string", "infrastructure": { "provider": "string", "region": "string", "instanceType": "string", "vcpu": 0, "storageTb": 0, "instanceFamily": "string", "deployment": "Cloud" }, "product": { "productType": "STANDARD_CLOUD" }, "commercial": { "contractType": "ON_DEMAND", "contractTerm": "1_YEAR", "paymentOption": "UPFRONT", "subscriptionTier": "STANDARD" }, "pricing": { "currencyCode": "string", "estimates": [ { "intervalCode": "string", "displayLabel": "string", "totalAmount": 0, "softwareAmount": 0, "hardwareAmount": 0, "vcpuSoftwareAmount": 0, "storageSoftwareAmount": 0 } ] } } ], "pagination": { "limit": 0, "offset": 0, "total": 0 } } ``` -------------------------------- ### GET VPC Peer Response Sample (200 OK) Source: https://cloud.docs.scylladb.com/stable/api.html This is a sample JSON response for a successful GET request to retrieve VPC peering details. It includes information about the peering configuration and status. ```json { * "error": "string", * "data": { * "externalId": "pcx-21f1c5d76e55f2b0c", * "id": 0, * "networkName": "string", * "ownerId": "string", * "vpcId": "vpc-11f1c5d76e55f2b0c", * "cidrList": [ * "192.0.2.0/24" ], * "cidrBlockVerified": [ * "192.0.2.0/24" ], * "regionId": 0, * "projectId": "string", * "status": "INITIATING_REQUEST", * "expiresAt": "string", * "allowCql": true, * "dcId": 0 } } ``` -------------------------------- ### Get all Scylla Cloud versions Source: https://cloud.docs.scylladb.com/stable/api.html Lists all available ScyllaDB Cloud service versions. ```APIDOC ## GET /deployment/scylla-versions ### Description List all available ScyllaDB Cloud service versions. ### Method GET ### Endpoint https://api.cloud.scylladb.com/deployment/scylla-versions ### Parameters #### Query Parameters - **defaults** (boolean) - Optional - Should include default values ### Request Example ```curl curl --request GET \ --url 'https://api.cloud.scylladb.com/deployment/scylla-versions?defaults=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' ``` ### Response #### Success Response (200) Content type: application/json ```json { "data": { "defaultScyllaVersionId": 91, "scyllaVersions": [ { "id": 103, "version": "2021.1.16", "description": "Scylla Enterprise 2021.1.16", "newCluster": "DISABLED", "serviceId": 1, "name": "Scylla Enterprise" } ] } } ``` ``` -------------------------------- ### Get all instances for the selected region Source: https://cloud.docs.scylladb.com/stable/api.html Lists instances supported in the given region of the given cloud provider. ```APIDOC ## GET /deployment/cloud-provider/{cloudProviderId}/region/{regionId}/instances ### Description Lists instances supported in the given region of the given cloud provider. ### Method GET ### Endpoint https://api.cloud.scylladb.com/deployment/cloud-provider/{cloudProviderId}/region/{regionId}/instances ### Parameters #### Path Parameters - **cloudProviderId** (integer) - Required - Cloud Provider ID (full list [get] /deployment/provider) - **regionId** (integer) - Required - Cloud Region ID (full list [get] /deployment/provider/{}/region) #### Query Parameters - **defaults** (boolean) - Optional - Should include default values - **target** (string) - Optional - Value: "VECTOR_SEARCH" target for the requested instance types ``` -------------------------------- ### Get list of supported cloud providers Source: https://cloud.docs.scylladb.com/stable/api.html Lists details about all cloud providers currently supported in Scylla-Cloud. ```APIDOC ## GET /deployment/cloud-providers ### Description Lists details about all cloud providers currently supported in Scylla-Cloud. ### Method GET ### Endpoint https://api.cloud.scylladb.com/deployment/cloud-providers ### Request Example ```curl curl --request GET \ --url https://api.cloud.scylladb.com/deployment/cloud-providers \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' ``` ### Response #### Success Response (200) Content type: application/json ```json { "data": { "cloudProviders": [ { "id": 1, "name": "AWS", "rootAccountId": "123456789012" } ] } } ``` ``` -------------------------------- ### Cluster Resize Response Sample Source: https://cloud.docs.scylladb.com/stable/api.html Example of a successful response when a cluster resize request is queued. Includes details about the request status and progress. ```json { "error": "string", "data": { "accountID": 0, "clusterID": 0, "id": 0, "progressDescription": "string", "progressPercent": 0, "provisioning": "dedicated-vm", "requestBody": { "processor": "support", "dcNodes": [ { "dcId": 0, "instanceTypeId": 0, "wantedSize": 0 } ] }, "requestType": "RESIZE_CLUSTER_V2", "status": "QUEUED", "userFriendlyError": "string", "userID": 0, "version": 0 } } ``` -------------------------------- ### Get VPC Connection List Source: https://cloud.docs.scylladb.com/stable/api.html Lists details of all VPC connections for a given account and cluster. ```APIDOC ## GET /account/{accountId}/cluster/{clusterId}/network/vpc/connection ### Description Lists details of all VPC connections for a given account and cluster. ### Method GET ### Endpoint https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/vpc/connection ### Parameters #### Path Parameters - **accountId** (integer) - Required - Account ID - **clusterId** (integer) - Required - Cluster ID #### Query Parameters - **type** (string) - Optional - List of connection types. - **dc** (integer) - Optional - Datacenter ID. ### Response #### Success Response (200) OK ``` -------------------------------- ### Get Deployment by Cloud Provider and Region Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves deployment information for a specific cloud provider and region. Requires an authorization token. ```shell curl --request GET \ --url 'https://api.cloud.scylladb.com/deployment/cloud-provider/{cloudProviderId}/region/{regionId}?defaults=SOME_BOOLEAN_VALUE&target=SOME_STRING_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' ``` -------------------------------- ### VPC Connection Response (200 OK) Source: https://cloud.docs.scylladb.com/stable/api.html Example response for a successful VPC connection creation or retrieval. Contains detailed information about the connection's configuration and status. ```json { "error": "string", "data": { "awaitingData": { "property1": "string", "property2": "string" }, "awaitingForClient": true, "cidrlist": [ "192.0.2.0/24" ], "clusterDCID": 0, "clusterID": 0, "clusterVPCID": 0, "data": { "property1": "string", "property2": "string" }, "externalID": "string", "id": 0, "name": "string", "stage": "string", "stageMessage": "string", "status": "INIT", "type": "AWS_TGW_ATTACHMENT" } } ``` -------------------------------- ### Get Account Details Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves details for the authorized user's account. Includes account ID, status, and role. ```shell curl --request GET \ --url https://api.cloud.scylladb.com/account/default \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` -------------------------------- ### Datacenter Scaling Policy Update Response Sample Source: https://cloud.docs.scylladb.com/stable/api.html Example response after successfully updating a datacenter's scaling policy. Indicates the request has been queued for processing. ```json { "data": { "accountId": 0, "clusterId": 0, "connectionID": 0, "id": 0, "progressDescription": "string", "progressPercent": 0, "requestBody": "string", "requestType": "ADD_DC", "status": "QUEUED", "ticketExternalID": "string", "userFriendlyError": "string", "userId": 0, "version": 0, "provisioning": "dedicated-vm" }, "error": "string" } ``` -------------------------------- ### Install Vector Search Nodes Source: https://cloud.docs.scylladb.com/stable/api.html Schedules the addition of vector search nodes to a specified datacenter within a cluster. This operation is asynchronous. ```APIDOC # VectorSearch ## Install vector search nodes to the specified datacenter in the cluster (async) ### Description Schedules addition of vector search nodes to the specified datacenter in the cluster (async). ### Method (Not specified in source, likely POST or PUT) ### Endpoint (Not specified in source, but related to cluster and datacenter) ### Parameters #### Path Parameters - **accountId** (integer) - Required - Account ID - **clusterId** (integer) - Required - Cluster ID - **dcId** (integer) - Required - Datacenter ID #### Header Parameters - **traceparent** (string) - Optional - Traceparent header for distributed tracing ``` -------------------------------- ### Get VPC Peers Source: https://cloud.docs.scylladb.com/stable/api.html Lists the details of all cluster VPC peers. ```APIDOC ## GET /account/{accountId}/cluster/{clusterId}/network/vpc/peer ### Description Lists the details of all cluster VPC peers. ### Method GET ### Endpoint https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/vpc/peer ### Parameters #### Path Parameters - **accountId** (integer) - Required - Account ID - **clusterId** (integer) - Required - Cluster ID #### Header Parameters - **traceparent** (string) - Optional ### Request Example ```curl curl --request GET \ --url https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/vpc/peer \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` ### Response #### Success Response (200) - **data** (array) - List of VPC peers - **externalId** (string) - **id** (integer) - **networkName** (string) - **ownerId** (string) - **vpcId** (string) - **cidrList** (array of strings) - **cidrBlockVerified** (array of strings) - **regionId** (integer) - **projectId** (string) - **status** (string) - **expiresAt** (string) - **allowCql** (boolean) - **dcId** (integer) #### Response Example ```json { "error": "string", "data": [ { "externalId": "pcx-21f1c5d76e55f2b0c", "id": 0, "networkName": "string", "ownerId": "string", "vpcId": "vpc-11f1c5d76e55f2b0c", "cidrList": [ "192.0.2.0/24" ], "cidrBlockVerified": [ "192.0.2.0/24" ], "regionId": 0, "projectId": "string", "status": "INITIATING_REQUEST", "expiresAt": "string", "allowCql": true, "dcId": 0 } ] } ``` ``` -------------------------------- ### Get VPC Connection Details Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves detailed information about a specific VPC connection. ```APIDOC ## GET /account/{accountId}/cluster/{clusterId}/network/vpc/connection/{connectionId} ### Description Retrieves detailed information about a specific VPC connection. ### Method GET ### Endpoint https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/vpc/connection/{connectionId} ### Parameters #### Path Parameters - **accountId** (integer) - Required - Account ID. - **clusterId** (integer) - Required - Cluster ID. - **connectionId** (integer) - Required - Connection ID. ### Response #### Success Response (200) - **error** (string) - Description of an error if one occurred. - **data** (object) - The VPC connection object. - **awaitingData** (object) - Data awaiting further processing. - **awaitingForClient** (boolean) - Indicates if data is awaiting client action. - **cidrlist** (array of strings) - List of CIDR blocks. - **clusterDCID** (integer) - Data center ID of the cluster. - **clusterID** (integer) - ID of the cluster. - **clusterVPCID** (integer) - VPC ID of the cluster. - **data** (object) - Additional data related to the connection. - **externalID** (string) - External identifier for the connection. - **id** (integer) - Unique identifier for the connection. - **name** (string) - Name of the connection. - **stage** (string) - Current stage of the connection. - **stageMessage** (string) - Message describing the current stage. - **status** (string) - Status of the connection (e.g., INIT). - **type** (string) - Type of the connection (e.g., AWS_TGW_ATTACHMENT). ### Response Example ```json { "error": "string", "data": { "awaitingData": { "property1": "string", "property2": "string" }, "awaitingForClient": true, "cidrlist": [ "192.0.2.0/24" ], "clusterDCID": 0, "clusterID": 0, "clusterVPCID": 0, "data": { "property1": "string", "property2": "string" }, "externalID": "string", "id": 0, "name": "string", "stage": "string", "stageMessage": "string", "status": "INIT", "type": "AWS_TGW_ATTACHMENT" } } ``` ``` -------------------------------- ### Get Scylla Cloud Versions Source: https://cloud.docs.scylladb.com/stable/api.html Lists all available ScyllaDB Cloud service versions. An optional 'defaults' query parameter can be included. Requires an Authorization header. ```curl curl --request GET \ --url 'https://api.cloud.scylladb.com/deployment/scylla-versions?defaults=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' ``` -------------------------------- ### Get Allowed Firewall Rules Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves the list of allowed IP addresses for a given cluster's firewall. ```APIDOC ## GET /account/{accountId}/cluster/{clusterId}/network/firewall/allowed ### Description Retrieves the list of allowed IP addresses for a given cluster's firewall. ### Method GET ### Endpoint https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/firewall/allowed ### Parameters #### Path Parameters - **accountId** (integer) - Required - Account ID - **clusterId** (integer) - Required - Cluster ID #### Header Parameters - **traceparent** (string) - Optional ### Request Example ```curl curl --request GET \ --url https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/firewall/allowed \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` ### Response #### Success Response (200) - **data** (array) - List of firewall rules - **clusterId** (integer) - **id** (integer) - **address** (string) #### Response Example ```json { "error": "string", "data": [ { "clusterId": 0, "id": 0, "address": "192.0.2.0/24" } ] } ``` ``` -------------------------------- ### Get all regions for the cloud provider Source: https://cloud.docs.scylladb.com/stable/api.html Lists regions supported by the given cloud provider ID. ```APIDOC ## GET /deployment/cloud-provider/{cloudProviderId}/regions ### Description Lists regions supported by the given cloud provider ID. ### Method GET ### Endpoint https://api.cloud.scylladb.com/deployment/cloud-provider/{cloudProviderId}/regions ### Parameters #### Path Parameters - **cloudProviderId** (integer) - Required - Cloud Provider ID (full list [get] /deployment/provider) #### Query Parameters - **defaults** (boolean) - Optional - Should include default values ### Request Example ```curl curl --request GET \ --url 'https://api.cloud.scylladb.com/deployment/cloud-provider/{cloudProviderId}/regions?defaults=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' ``` ### Response #### Success Response (200) Content type: application/json ```json { "data": { "regions": [ { "id": 30, "externalId": "us-east1", "cloudProviderId": 2, "name": "us-east1", "dcName": "GCE_US_EAST_1", "fullName": "us-east1 (South Carolina)", "continent": "string", "backupStorageGBCost": 0.02, "trafficSameRegionInGBCost": 0, "trafficSameRegionOutGBCost": 0, "trafficCrossRegionOutGBCost": 0, "trafficInternetOutGBCost": 0, "multiRegionExternalId": "us" } ], "defaultRegionId": 30, "defaultInstanceId": 40, "instances": [ { "id": 40, "externalId": "n2-highmem-2", "cloudProviderId": 2, "groupDefault": true, "displayOrder": 3, "memory": 16384, "localDiskCount": 1, "totalStorage": 375, "cpuCount": 2, "networkSpeed": 10, "networkSpeedDescription": "Maximum egress bandwidth, 10 Gbps", "baseNetworkSpeed": 5, "externalStorageNetworkSpeed": 0, "costPerHour": 0, "environment": "PRODUCTION", "licenseCostOnDemandPerHour": 0, "subscriptionCostHourly": 0.0956, "subscriptionCostHourlyXCloud": 0.12, "subscriptionCostHourlyXCloudBYOA": 0.15, "subscriptionCostMonthly": 54, "subscriptionCostMonthlyXCloud": 65, "subscriptionCostYearly": 560, "subscriptionCostYearlyXCloud": 650, "instanceCostHourly": 0.03, "instanceFamily": "n2", "freeTier": true } ] } } ``` ``` -------------------------------- ### Get Availability Zones for Cloud Account and Region Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves a list of availability zones for a specified cloud account and region. Supports filtering by instance type. ```shell curl --request GET \ --url 'https://api.cloud.scylladb.com/account/{accountId}/cloud-account/{cloudAccountId}/region/{regionId}/zones?instanceTypeId=SOME_STRING_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` -------------------------------- ### Get Instances for Region Source: https://cloud.docs.scylladb.com/stable/api.html Lists instances supported in a given region of a specified cloud provider. Accepts 'defaults' and 'target' query parameters and requires cloudProviderId and regionId in the path. Requires an Authorization header. ```curl curl --request GET \ --url 'https://api.cloud.scylladb.com/deployment/cloud-provider/{cloudProviderId}/regions/{regionId}/instances?defaults=SOME_BOOLEAN_VALUE&target=VECTOR_SEARCH' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' ``` -------------------------------- ### Get Firewall Allowed List Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves the allowed network firewall list for a given account and cluster. Requires an Authorization header. ```curl curl --request GET \ --url https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/firewall/allowed \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` -------------------------------- ### Get availability zones for a cloud account and region Source: https://cloud.docs.scylladb.com/stable/api.html Returns a list of availability zones for a specific cloud account and region. It can be filtered by instance type. ```APIDOC ## GET /account/{accountId}/cloud-account/{cloudAccountId}/region/{regionId}/zones ### Description Returns list of availability zones for a specific cloud account and region. ### Method GET ### Endpoint /account/{accountId}/cloud-account/{cloudAccountId}/region/{regionId}/zones #### Query Parameters - **instanceTypeId** (string) - Optional - Instance Type ID to filter available zones #### Header Parameters - **traceparent** (string) - Optional ### Request Example ```curl curl --request GET \ --url 'https://api.cloud.scylladb.com/account/{accountId}/cloud-account/{cloudAccountId}/region/{regionId}/zones?instanceTypeId=SOME_STRING_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` ### Response #### Success Response (200) OK - **data** (array) - List of availability zones. - **id** (string) - The availability zone ID. - **name** (string) - The availability zone name. - **error** (string) - Error message if any. ``` -------------------------------- ### Get Cluster Details using cURL Source: https://cloud.docs.scylladb.com/stable/api.html This cURL command demonstrates how to retrieve full details for a specific ScyllaDB cluster, including optional enrichment and authorization headers. ```shell curl --request GET \ --url 'https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}?enriched=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` -------------------------------- ### Get the list of cluster requests created in context of given account Source: https://cloud.docs.scylladb.com/stable/api.html Return the list of cluster requests created in the context of a given account. ```APIDOC ## Get the list of cluster requests created in context of given account Return the list of cluster requests created in the context of a given account. ### Method GET ### Endpoint /account/{accountId}/cluster/{clusterId}/request ### Parameters #### Path Parameters - **accountId** (integer) - Required - Account ID - **clusterId** (integer) - Required - Cluster ID #### Query Parameters - **type** (string) - Optional - Enum: "ADD_DC" "CREATE_CLUSTER" "DELETE_CLUSTER" "RESIZE_CLUSTER_V2" "RESIZE_CLUSTER_V3" "UPGRADE_CLUSTER" "SCALE_CLUSTER" "INSTALL_MANAGER" "DNS" "CREATE_VPC_PEERING" "DELETE_VPC_PEERING" "CREATE_CLUSTER_CONNECTION" "DELETE_CLUSTER_CONNECTION" "UPDATE_CLUSTER_CONNECTION" "INSTALL_VECTOR_SEARCH" "RESIZE_VECTOR_SEARCH" "DELETE_VECTOR_SEARCH" - type of request - **status** (string) - Optional - Enum: "QUEUED" "IN_PROGRESS" "FAILED" "COMPLETED" - status of request #### Header Parameters - **traceparent** (string) - Optional ### Responses #### Success Response (200) OK #### Response Example ```json { "error": "string", "data": [ { "accountId": 0, "clusterId": 0, "connectionID": 0, "id": 0, "progressDescription": "string", "progressPercent": 0, "requestBody": "string", "requestType": "ADD_DC", "status": "QUEUED", "ticketExternalID": "string", "userFriendlyError": "string", "userId": 0, "version": 0, "provisioning": "dedicated-vm" } ] } ``` ``` -------------------------------- ### Get Deployment by Cloud Provider and Region Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves deployment information for a specific cloud provider and region. Supports filtering by defaults and target values. ```APIDOC ## GET /deployment/cloud-provider/{cloudProviderId}/region/{regionId} ### Description Retrieves deployment information for a specific cloud provider and region. ### Method GET ### Endpoint https://api.cloud.scylladb.com/deployment/cloud-provider/{cloudProviderId}/region/{regionId} ### Query Parameters - **defaults** (boolean) - Optional - Specifies whether to use default settings. - **target** (string) - Optional - Specifies the target configuration. ### Request Example ```shell curl --request GET \ --url 'https://api.cloud.scylladb.com/deployment/cloud-provider/{cloudProviderId}/region/{regionId}?defaults=SOME_BOOLEAN_VALUE&target=SOME_STRING_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' ``` ### Response #### Success Response (200) - **data** (object) - Contains deployment details. - **defaultInstanceId** (integer) - The ID of the default instance. - **instances** (array) - A list of available instances. - **id** (integer) - Instance ID. - **externalId** (string) - External identifier for the instance. - **cloudProviderId** (integer) - ID of the cloud provider. - **groupDefault** (boolean) - Indicates if this is the default instance for the group. - **displayOrder** (integer) - Order for display purposes. - **memory** (integer) - Memory size in MB. - **localDiskCount** (integer) - Number of local disks. - **totalStorage** (integer) - Total storage capacity in GB. - **cpuCount** (integer) - Number of CPUs. - **networkSpeed** (integer) - Network speed in Gbps. - **networkSpeedDescription** (string) - Description of network speed. - **baseNetworkSpeed** (integer) - Base network speed. - **externalStorageNetworkSpeed** (integer) - Network speed for external storage. - **costPerHour** (number) - Cost per hour. - **environment** (string) - Environment type (e.g., PRODUCTION). - **licenseCostOnDemandPerHour** (number) - On-demand license cost per hour. - **subscriptionCostHourly** (number) - Hourly subscription cost. - **subscriptionCostHourlyXCloud** (number) - Hourly subscription cost for XCloud. - **subscriptionCostHourlyXCloudBYOA** (number) - Hourly subscription cost for XCloud BYOA. - **subscriptionCostMonthly** (number) - Monthly subscription cost. - **subscriptionCostMonthlyXCloud** (number) - Monthly subscription cost for XCloud. - **subscriptionCostYearly** (number) - Yearly subscription cost. - **subscriptionCostYearlyXCloud** (number) - Yearly subscription cost for XCloud. - **instanceCostHourly** (number) - Instance cost per hour. - **instanceFamily** (string) - Instance family name. - **freeTier** (boolean) - Indicates if the instance is part of the free tier. #### Response Example ```json { "error": "040101", "data": { "defaultInstanceId": 1, "instances": [ { "id": 40, "externalId": "n2-highmem-2", "cloudProviderId": 2, "groupDefault": true, "displayOrder": 3, "memory": 16384, "localDiskCount": 1, "totalStorage": 375, "cpuCount": 2, "networkSpeed": 10, "networkSpeedDescription": "Maximum egress bandwidth, 10 Gbps", "baseNetworkSpeed": 5, "externalStorageNetworkSpeed": 0, "costPerHour": 0, "environment": "PRODUCTION", "licenseCostOnDemandPerHour": 0, "subscriptionCostHourly": 0.0956, "subscriptionCostHourlyXCloud": 0.12, "subscriptionCostHourlyXCloudBYOA": 0.15, "subscriptionCostMonthly": 54, "subscriptionCostMonthlyXCloud": 65, "subscriptionCostYearly": 560, "subscriptionCostYearlyXCloud": 650, "instanceCostHourly": 0.03, "instanceFamily": "n2", "freeTier": true } ] } } ``` ``` -------------------------------- ### GET VPC Peer Request Sample Source: https://cloud.docs.scylladb.com/stable/api.html Use this cURL command to retrieve details of a specific VPC peering connection. Ensure you replace placeholder tokens with your actual credentials and values. ```shell curl --request GET \ --url https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/vpc/peer/{peerId} \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` -------------------------------- ### Get Cluster Requests (Shell + Curl) Source: https://cloud.docs.scylladb.com/stable/api.html Retrieve a list of cluster requests for a given account and cluster. Supports filtering by request type and status. Requires authorization and traceparent headers. ```shell curl --request GET \ --url 'https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/request?type=SOME_STRING_VALUE&status=SOME_STRING_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` -------------------------------- ### Cluster Nodes Response Structure Source: https://cloud.docs.scylladb.com/stable/api.html Example JSON response for the 'Get Cluster Nodes' API call, detailing the structure of node information, including availability zone, region, instance details, and cloud provider specifics. ```json { "data": { "nodes": [ { "azName": "string", "azId": "string", "rackName": "string", "billingStartDate": "string", "cloudProviderId": 0, "instanceId": 0, "regionId": 0, "dcId": 0, "clusterJoinDate": "string", "dns": "string", "id": 0, "state": "NORMAL", "privateIp": "string", "publicIp": "string", "serviceId": 0, "serviceVersionId": 0, "status": "ACTIVE", "cloudProvider": { "id": 1, "name": "AWS", "rootAccountId": "123456789012" }, "region": { "id": 30, "externalId": "us-east1", "cloudProviderId": 2, "name": "us-east1", "dcName": "GCE_US_EAST_1", "fullName": "us-east1 (South Carolina)", "continent": "string", "backupStorageGBCost": 0.02, "trafficSameRegionInGBCost": 0, "trafficSameRegionOutGBCost": 0, "trafficCrossRegionOutGBCost": 0, "trafficInternetOutGBCost": 0, "multiRegionExternalId": "us" }, "instance": { "id": 40, "externalId": "n2-highmem-2", "cloudProviderId": 2, "groupDefault": true, "displayOrder": 3, "memory": 16384, "localDiskCount": 1, "totalStorage": 375, "cpuCount": 2, "networkSpeed": 10, "networkSpeedDescription": "Maximum egress bandwidth, 10 Gbps", "baseNetworkSpeed": 5, "externalStorageNetworkSpeed": 0, "costPerHour": 0, "environment": "PRODUCTION", "licenseCostOnDemandPerHour": 0, "subscriptionCostHourly": 0.0956, "subscriptionCostHourlyXCloud": 0.12, "subscriptionCostHourlyXCloudBYOA": 0.15, "subscriptionCostMonthly": 54, "subscriptionCostMonthlyXCloud": 65, "subscriptionCostYearly": 560, "subscriptionCostYearlyXCloud": 650, "instanceCostHourly": 0.03, "instanceFamily": "n2", "freeTier": true }, "dataCenter": { "id": 0, "clusterId": 0, "cloudProviderId": 0, "regionId": 0, "replicationFactor": 0, "cidrBlock": "192.0.2.0/24", "accountCloudProviderCredentialsId": 0, "status": "ACTIVE", "name": "string", "instanceId": 0, "scaling": { "instanceFamilies": [ "string" ], "instanceTypeIDs": [ 0 ], "policies": { "storage": { "min": 0, "targetUtilization": 0 }, "vcpu": { "min": 0 } } } } } ] } } ``` -------------------------------- ### Get the details about cluster request Source: https://cloud.docs.scylladb.com/stable/api.html Return details about a particular cluster request. ```APIDOC ## Get the details about cluster request Return details about a particular cluster request. ### Method GET ### Endpoint /account/{accountId}/cluster/request/{requestId} ### Parameters #### Path Parameters - **accountId** (integer) - Required - Account ID - **requestId** (integer) - Required - RequestId #### Header Parameters - **traceparent** (string) - Optional ### Responses #### Success Response (200) OK #### Response Example ```json { "error": "string", "data": { "accountId": 0, "clusterId": 0, "connectionID": 0, "id": 0, "progressDescription": "string", "progressPercent": 0, "requestBody": "string", "requestType": "ADD_DC", "status": "QUEUED", "ticketExternalID": "string", "userFriendlyError": "string", "userId": 0, "version": 0, "provisioning": "dedicated-vm" } } ``` ``` -------------------------------- ### Get account details Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves account details tied to the authorized user. ```APIDOC ## GET /account/default ### Description Gives account details tied to authorized user. ### Method GET ### Endpoint /account/default #### Header Parameters - **traceparent** (string) - Optional ### Request Example ```curl curl --request GET \ --url https://api.cloud.scylladb.com/account/default \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` ### Response #### Success Response (200) OK - **data** (object) - Contains account details. - **accountId** (integer) - The account ID. - **accountStatus** (string) - The status of the account. - **role** (string) - The user's role in the account. - **userAccountStatus** (string) - The status of the user's account. - **name** (string) - The name of the account. - **userId** (integer) - The user ID. - **error** (string) - Error message if any. ``` -------------------------------- ### Get VPC Peer Details Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves the details of a specific VPC peering connection. ```APIDOC ## GET /account/{accountId}/cluster/{clusterId}/network/vpc/peer/{peerId} ### Description Retrieves the details of a specific VPC peering connection. ### Method GET ### Endpoint https://api.cloud.scylladb.com/account/{accountId}/cluster/{clusterId}/network/vpc/peer/{peerId} ### Parameters #### Path Parameters - **accountId** (integer) - Required - Account ID - **clusterId** (integer) - Required - Cluster ID - **peerId** (integer) - Required - Peer ID #### Header Parameters - **Authorization** (string) - Required - Bearer token - **traceparent** (string) - Optional - Traceparent header ### Response #### Success Response (200) - **error** (string) - Description of the error if any. - **data** (object) - Contains the VPC peering details. - **externalId** (string) - The external ID of the peering connection. - **id** (integer) - The internal ID of the peering connection. - **networkName** (string) - The name of the network. - **ownerId** (string) - The ID of the owner. - **vpcId** (string) - The ID of the VPC. - **cidrList** (array of strings) - List of CIDR blocks. - **cidrBlockVerified** (array of strings) - List of verified CIDR blocks. - **regionId** (integer) - The ID of the region. - **projectId** (string) - The ID of the project. - **status** (string) - The status of the peering connection. - **expiresAt** (string) - The expiration time of the peering connection. - **allowCql** (boolean) - Indicates if CQL is allowed. - **dcId** (integer) - The ID of the datacenter. ``` -------------------------------- ### Get Clusters with Metrics Source: https://cloud.docs.scylladb.com/stable/api.html Retrieves a list of clusters for a given account, with optional enrichment and specific metrics. ```APIDOC ## GET /account/{accountId}/clusters ### Description Retrieves a list of clusters for a given account, with optional enrichment and specific metrics. ### Method GET ### Endpoint /account/{accountId}/clusters ### Parameters #### Query Parameters - **enriched** (boolean) - Optional - Enrich cluster with additional data (provider, region, instance). - **metrics** (Array of strings) - Optional - List of comma-separated metrics to fetch. Items Enum: "NODES_UP" "NODES_DOWN" "STORAGE_FREE" "STORAGE_USED" "STORAGE_FREE_SANDBOX" "STORAGE_USED_SANDBOX" "STORAGE_UTILIZATION_AVG_30D" "STORAGE_UTILIZATION_AVG_30D_SANDBOX" "CPU_LOAD" "TOTAL_REQUESTS_RATE" "READS_RATE" "WRITES_RATE" "LATENCY_READ_AVERAGE" "LATENCY_READ_95TH" "LATENCY_WRITE_AVERAGE" "LATENCY_WRITE_95TH" "ALTERNATOR_LATENCY_GETITEM_AVERAGE" "ALTERNATOR_LATENCY_PUTITEM_AVERAGE" "ALTERNATOR_LATENCY_GETITEM_95TH" "ALTERNATOR_LATENCY_PUTITEM_95TH" "ALTERNATOR_GETITEM_NUM_OPS" "ALTERNATOR_PUTITEM_NUM_OPS" "ALTERNATOR_QUERY_NUM_OPS" "ALTERNATOR_SCAN_NUM_OPS" #### Header Parameters - **traceparent** (string) - Optional ### Request Example ```curl curl --request GET \ --url 'https://api.cloud.scylladb.com/account/{accountId}/clusters?enriched=SOME_BOOLEAN_VALUE&metrics=SOME_ARRAY_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'traceparent: SOME_STRING_VALUE' ``` ### Response #### Success Response (200) OK #### Error Responses - **400** Bad Request - **404** Not Found - **500** Internal Server Error ```