Skip to content

Latest commit

 

History

History
727 lines (509 loc) · 28.1 KB

ClusterApi.md

File metadata and controls

727 lines (509 loc) · 28.1 KB

corellium.ClusterApi

Request timeouts

Every API method accepts _request_timeout in seconds: a positive float for the urllib3 total timeout, or a pair of positive floats (connect, read). This controls HTTP transport waiting, not how long the server operation may run. It is not a wall-clock deadline for the operation or for all retries combined.

Transport timeouts raise urllib3.exceptions.TimeoutError subclasses such as ReadTimeoutError and ConnectTimeoutError. When retries are exhausted, urllib3 can instead raise urllib3.exceptions.MaxRetryError; inspect its reason to distinguish a timeout from other connection failures. Retry behavior depends on the HTTP method and Configuration.retries. These are client-side exceptions, not HTTP response statuses or SDK ApiException responses.

A timeout does not guarantee cancellation or rollback of an operation accepted by the server. For example, after a start request times out, the instance may still be starting or may already be running; the timeout alone does not establish its state or mean it was stopped or destroyed. The request might not have reached the server at all, leaving the instance off. Treat the outcome as unknown and fetch the instance's current state before deciding whether to retry. If it has since been destroyed, that lookup may return not found; the timeout itself does not prove destruction. Do not blindly repeat a state-changing request.

Catch urllib3.exceptions.TimeoutError and urllib3.exceptions.MaxRetryError separately from the SDK ApiException. MaxRetryError is not a subclass of TimeoutError. With _with_http_info the same rules apply. With _without_preload_content, a read timeout may also occur later when reading the returned response body.

All URIs are relative to https://app.corellium.com/api

Method HTTP request Description
v3_delete_cluster_snapshot DELETE /v3/cluster/snapshots/{snapshotId} Delete cluster snapshot
v3_get_cluster_config GET /v3/cluster/config Get cluster configuration
v3_get_cluster_node GET /v3/cluster/nodes/{nodeId} Get cluster node
v3_get_cluster_node_console GET /v3/cluster/nodes/{nodeId}/console Get node console websocket URL
v3_get_cluster_snapshot GET /v3/cluster/snapshots/{snapshotId} Get cluster snapshot
v3_list_cluster_nodes GET /v3/cluster/nodes List cluster nodes
v3_list_cluster_snapshots GET /v3/cluster/snapshots List cluster snapshots
v3_patch_cluster_config PATCH /v3/cluster/config Update cluster configuration

v3_delete_cluster_snapshot

v3_delete_cluster_snapshot(snapshot_id)

Delete cluster snapshot

Required role: Cluster administrator.

Deletes a snapshot from the cluster, for example to free storage. Snapshots that are in use, still being created, or were just restored cannot be deleted (400). Requires a cluster administrator and the cluster snapshot management feature (clusterSnapshotMgmt).

Deletes are idempotent: an unknown snapshotId, or a snapshot that was already deleted, is a successful no-op that still returns 204, and repeated calls return 204 as well. A 404 means the request path did not match a delete route, not that the target was missing.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://app.corellium.com/api
# See configuration.py for a list of all supported configuration parameters.
configuration = corellium.Configuration(
    host = "https://app.corellium.com/api"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (JWT): BearerAuth
configuration = corellium.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with corellium.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = corellium.ClusterApi(api_client)
    snapshot_id = 'c67af9c0-26cd-4233-9782-436c842b60db' # str | Snapshot identifier.

    try:
        # Delete cluster snapshot
        api_instance.v3_delete_cluster_snapshot(snapshot_id)
    except Exception as e:
        print("Exception when calling ClusterApi->v3_delete_cluster_snapshot: %s\n" % e)

Parameters

Name Type Description Notes
snapshot_id str Snapshot identifier.

Return type

void (empty response body)

Authorization

BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
204 Snapshot deleted. -
400 Snapshot cannot be deleted (in use, still creating, or freshly restored). -
401 Not signed in: the `Authorization: Bearer <token>` header is missing, or the token is invalid or expired. Get a new token and retry. -
403 Cluster administrator permissions required. The clusterSnapshotMgmt feature must be enabled. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

v3_get_cluster_config

ClusterConfig v3_get_cluster_config()

Get cluster configuration

Required role: Cluster administrator.

Returns the settings that apply to the whole cluster. Requires a cluster administrator.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.cluster_config import ClusterConfig
from corellium.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://app.corellium.com/api
# See configuration.py for a list of all supported configuration parameters.
configuration = corellium.Configuration(
    host = "https://app.corellium.com/api"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (JWT): BearerAuth
configuration = corellium.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with corellium.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = corellium.ClusterApi(api_client)

    try:
        # Get cluster configuration
        api_response = api_instance.v3_get_cluster_config()
        print("The response of ClusterApi->v3_get_cluster_config:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling ClusterApi->v3_get_cluster_config: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

ClusterConfig

Authorization

BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Cluster configuration object. -
401 Not signed in: the `Authorization: Bearer <token>` header is missing, or the token is invalid or expired. Get a new token and retry. -
403 Cluster administrator permissions required. Signed in, but not allowed to do this: you lack the required role, have no access to the project, or your license does not include the feature. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

v3_get_cluster_node

NodeInformation v3_get_cluster_node(node_id)

Get cluster node

Required role: Cluster administrator.

Returns details for one server (node) in the cluster, identified by the ID from v3ListClusterNodes. Requires a cluster administrator.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.node_information import NodeInformation
from corellium.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://app.corellium.com/api
# See configuration.py for a list of all supported configuration parameters.
configuration = corellium.Configuration(
    host = "https://app.corellium.com/api"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (JWT): BearerAuth
configuration = corellium.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with corellium.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = corellium.ClusterApi(api_client)
    node_id = '2x3ZOdu4pshouoY0kttRPoiIk5s' # str | Node identifier.

    try:
        # Get cluster node
        api_response = api_instance.v3_get_cluster_node(node_id)
        print("The response of ClusterApi->v3_get_cluster_node:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling ClusterApi->v3_get_cluster_node: %s\n" % e)

Parameters

Name Type Description Notes
node_id str Node identifier.

Return type

NodeInformation

Authorization

BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Node details. -
401 Not signed in: the `Authorization: Bearer <token>` header is missing, or the token is invalid or expired. Get a new token and retry. -
403 Cluster administrator permissions required. Signed in, but not allowed to do this: you lack the required role, have no access to the project, or your license does not include the feature. -
404 Node not found. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

v3_get_cluster_node_console

NodeConsoleEndpoint v3_get_cluster_node_console(node_id)

Get node console websocket URL

Required role: Cluster administrator.

Returns a WebSocket URL for a terminal session on one cluster server (node), for maintenance and troubleshooting. Open the URL with a WebSocket client to get the console stream. Requires a cluster administrator.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.node_console_endpoint import NodeConsoleEndpoint
from corellium.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://app.corellium.com/api
# See configuration.py for a list of all supported configuration parameters.
configuration = corellium.Configuration(
    host = "https://app.corellium.com/api"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (JWT): BearerAuth
configuration = corellium.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with corellium.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = corellium.ClusterApi(api_client)
    node_id = '2x3ZOdu4pshouoY0kttRPoiIk5s' # str | Node identifier.

    try:
        # Get node console websocket URL
        api_response = api_instance.v3_get_cluster_node_console(node_id)
        print("The response of ClusterApi->v3_get_cluster_node_console:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling ClusterApi->v3_get_cluster_node_console: %s\n" % e)

Parameters

Name Type Description Notes
node_id str Node identifier.

Return type

NodeConsoleEndpoint

Authorization

BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Console WebSocket URL. -
401 Not signed in: the `Authorization: Bearer <token>` header is missing, or the token is invalid or expired. Get a new token and retry. -
403 Cluster administrator permissions required. Signed in, but not allowed to do this: you lack the required role, have no access to the project, or your license does not include the feature. -
404 Node not found. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

v3_get_cluster_snapshot

ClusterSnapshot v3_get_cluster_snapshot(snapshot_id)

Get cluster snapshot

Required role: Cluster administrator.

Returns one snapshot from the cluster-wide list. Requires a cluster administrator and the cluster snapshot management feature (clusterSnapshotMgmt).

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.cluster_snapshot import ClusterSnapshot
from corellium.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://app.corellium.com/api
# See configuration.py for a list of all supported configuration parameters.
configuration = corellium.Configuration(
    host = "https://app.corellium.com/api"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (JWT): BearerAuth
configuration = corellium.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with corellium.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = corellium.ClusterApi(api_client)
    snapshot_id = 'c67af9c0-26cd-4233-9782-436c842b60db' # str | Snapshot identifier.

    try:
        # Get cluster snapshot
        api_response = api_instance.v3_get_cluster_snapshot(snapshot_id)
        print("The response of ClusterApi->v3_get_cluster_snapshot:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling ClusterApi->v3_get_cluster_snapshot: %s\n" % e)

Parameters

Name Type Description Notes
snapshot_id str Snapshot identifier.

Return type

ClusterSnapshot

Authorization

BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Cluster snapshot details. -
400 Invalid snapshot ID. -
401 Not signed in: the `Authorization: Bearer <token>` header is missing, or the token is invalid or expired. Get a new token and retry. -
403 Cluster administrator permissions required. The clusterSnapshotMgmt feature must be enabled. -
404 Snapshot not found. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

v3_list_cluster_nodes

NodeList v3_list_cluster_nodes(limit=limit, offset=offset)

List cluster nodes

Required role: Cluster administrator.

Lists the servers (nodes) that make up this Corellium cluster, with their status and resources. Use it to check cluster health or find a node before opening its console. Requires a cluster administrator. Results are paginated.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.node_list import NodeList
from corellium.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://app.corellium.com/api
# See configuration.py for a list of all supported configuration parameters.
configuration = corellium.Configuration(
    host = "https://app.corellium.com/api"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (JWT): BearerAuth
configuration = corellium.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with corellium.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = corellium.ClusterApi(api_client)
    limit = 100 # float | Most results to return in one page. Whole number from 1 to 1000; defaults to 100. A value outside that range is rejected with 400. (optional) (default to 100)
    offset = 0 # float | How many results to skip before this page starts; defaults to 0. To get the next page, add `limit` to the previous `offset`. (optional) (default to 0)

    try:
        # List cluster nodes
        api_response = api_instance.v3_list_cluster_nodes(limit=limit, offset=offset)
        print("The response of ClusterApi->v3_list_cluster_nodes:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling ClusterApi->v3_list_cluster_nodes: %s\n" % e)

Parameters

Name Type Description Notes
limit float Most results to return in one page. Whole number from 1 to 1000; defaults to 100. A value outside that range is rejected with 400. [optional] [default to 100]
offset float How many results to skip before this page starts; defaults to 0. To get the next page, add `limit` to the previous `offset`. [optional] [default to 0]

Return type

NodeList

Authorization

BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Paginated list of cluster nodes. -
401 Not signed in: the `Authorization: Bearer <token>` header is missing, or the token is invalid or expired. Get a new token and retry. -
403 Cluster administrator permissions required. Signed in, but not allowed to do this: you lack the required role, have no access to the project, or your license does not include the feature. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

v3_list_cluster_snapshots

ClusterSnapshotList v3_list_cluster_snapshots(limit=limit, offset=offset, springboard=springboard, live=live, fresh=fresh, device_name=device_name, task=task, search=search, to=to, var_from=var_from, order_by=order_by)

List cluster snapshots

Required role: Cluster administrator.

Lists device snapshots across the whole cluster, for administrators managing storage. Requires a cluster administrator and the cluster snapshot management feature (clusterSnapshotMgmt). Results are paginated. For one device's snapshots, use GET /v3/instances/{instanceId}/snapshots instead.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.cluster_snapshot_list import ClusterSnapshotList
from corellium.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://app.corellium.com/api
# See configuration.py for a list of all supported configuration parameters.
configuration = corellium.Configuration(
    host = "https://app.corellium.com/api"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (JWT): BearerAuth
configuration = corellium.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with corellium.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = corellium.ClusterApi(api_client)
    limit = 100 # float | Number of entries to return. (optional) (default to 100)
    offset = 0 # float | Number of rows to skip. (optional) (default to 0)
    springboard = 'true' # str | Filter by springboard snapshot flag. (optional)
    live = 'true' # str | Filter by live snapshot flag. (optional)
    fresh = 'false' # str | Filter by fresh snapshot flag. (optional)
    device_name = 'iPhone 13 Pro' # str | Filter by device name. (optional)
    task = 'creating' # str | Filter by task being executed on the snapshot. (optional)
    search = 'pre-update' # str | Fuzzy search on snapshot and instance name or ID. (optional)
    to = '2026-05-22T13:58:34Z' # datetime | Filter to this date (based on createdAt). (optional)
    var_from = '2026-05-22T00:00Z' # datetime | Filter from this date (based on createdAt). (optional)
    order_by = -createdAt # str | Sort field and direction. (optional) (default to -createdAt)

    try:
        # List cluster snapshots
        api_response = api_instance.v3_list_cluster_snapshots(limit=limit, offset=offset, springboard=springboard, live=live, fresh=fresh, device_name=device_name, task=task, search=search, to=to, var_from=var_from, order_by=order_by)
        print("The response of ClusterApi->v3_list_cluster_snapshots:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling ClusterApi->v3_list_cluster_snapshots: %s\n" % e)

Parameters

Name Type Description Notes
limit float Number of entries to return. [optional] [default to 100]
offset float Number of rows to skip. [optional] [default to 0]
springboard str Filter by springboard snapshot flag. [optional]
live str Filter by live snapshot flag. [optional]
fresh str Filter by fresh snapshot flag. [optional]
device_name str Filter by device name. [optional]
task str Filter by task being executed on the snapshot. [optional]
search str Fuzzy search on snapshot and instance name or ID. [optional]
to datetime Filter to this date (based on createdAt). [optional]
var_from datetime Filter from this date (based on createdAt). [optional]
order_by str Sort field and direction. [optional] [default to -createdAt]

Return type

ClusterSnapshotList

Authorization

BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Paginated list of cluster snapshots. -
400 Invalid query parameter(s). -
401 Not signed in: the `Authorization: Bearer <token>` header is missing, or the token is invalid or expired. Get a new token and retry. -
403 Cluster administrator permissions required. The clusterSnapshotMgmt feature must be enabled. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

v3_patch_cluster_config

v3_patch_cluster_config(patch_cluster_config_body=patch_cluster_config_body)

Update cluster configuration

Required role: Cluster administrator.

Changes cluster-wide settings and applies them on every controller node. Send only the settings you want to change. Requires a cluster administrator.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.patch_cluster_config_body import PatchClusterConfigBody
from corellium.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://app.corellium.com/api
# See configuration.py for a list of all supported configuration parameters.
configuration = corellium.Configuration(
    host = "https://app.corellium.com/api"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure Bearer authorization (JWT): BearerAuth
configuration = corellium.Configuration(
    access_token = os.environ["BEARER_TOKEN"]
)

# Enter a context with an instance of the API client
with corellium.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = corellium.ClusterApi(api_client)
    patch_cluster_config_body = corellium.PatchClusterConfigBody() # PatchClusterConfigBody |  (optional)

    try:
        # Update cluster configuration
        api_instance.v3_patch_cluster_config(patch_cluster_config_body=patch_cluster_config_body)
    except Exception as e:
        print("Exception when calling ClusterApi->v3_patch_cluster_config: %s\n" % e)

Parameters

Name Type Description Notes
patch_cluster_config_body PatchClusterConfigBody [optional]

Return type

void (empty response body)

Authorization

BearerAuth

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Configuration updated successfully. -
400 Invalid request body. -
401 Not signed in: the `Authorization: Bearer <token>` header is missing, or the token is invalid or expired. Get a new token and retry. -
403 Cluster administrator permissions required. Signed in, but not allowed to do this: you lack the required role, have no access to the project, or your license does not include the feature. -
500 Configuration update failed on one or more nodes. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]