Skip to content

Latest commit

 

History

History
658 lines (468 loc) · 34.2 KB

DomainApi.md

File metadata and controls

658 lines (468 loc) · 34.2 KB

corellium.DomainApi

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_create_domain_welcome_message POST /v3/domain/welcome Create a welcome message for a domain
v3_delete_domain_welcome_message DELETE /v3/domain/welcome Delete the welcome message for the authenticated user's domain
v3_get_domain_image_upload GET /v3/domain/image-upload/{type}/{imageId}/{name} Get image upload status
v3_get_domain_welcome_message GET /v3/domain/welcome Get the welcome message for the authenticated user's domain
v3_list_domain_software GET /v3/domain/software List domain-level firmware images
v3_patch_domain_welcome_message PATCH /v3/domain/welcome Update a welcome message for a domain
v3_put_domain_image_upload PUT /v3/domain/image-upload/{type}/{imageId}/{name} Upload image chunk

v3_create_domain_welcome_message

DomainWelcomeMessageResponse v3_create_domain_welcome_message(set_domain_welcome_message_body)

Create a welcome message for a domain

Required role: Domain administrator.

Creates a new welcome message for the authenticated user's domain admin, or updates the existing one. The message is sanitized to prevent XSS.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.domain_welcome_message_response import DomainWelcomeMessageResponse
from corellium.models.set_domain_welcome_message_body import SetDomainWelcomeMessageBody
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.DomainApi(api_client)
    set_domain_welcome_message_body = corellium.SetDomainWelcomeMessageBody() # SetDomainWelcomeMessageBody | 

    try:
        # Create a welcome message for a domain
        api_response = api_instance.v3_create_domain_welcome_message(set_domain_welcome_message_body)
        print("The response of DomainApi->v3_create_domain_welcome_message:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling DomainApi->v3_create_domain_welcome_message: %s\n" % e)

Parameters

Name Type Description Notes
set_domain_welcome_message_body SetDomainWelcomeMessageBody

Return type

DomainWelcomeMessageResponse

Authorization

BearerAuth

HTTP request headers

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

HTTP response details

Status code Description Response headers
200 Welcome message created. -
400 Validation error (e.g. empty message). -
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 Domain 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_delete_domain_welcome_message

v3_delete_domain_welcome_message()

Delete the welcome message for the authenticated user's domain

Required role: Domain administrator.

Delete the welcome message for the authenticated user's domain.

Deletes are idempotent: a domain with no welcome message 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.DomainApi(api_client)

    try:
        # Delete the welcome message for the authenticated user's domain
        api_instance.v3_delete_domain_welcome_message()
    except Exception as e:
        print("Exception when calling DomainApi->v3_delete_domain_welcome_message: %s\n" % e)

Parameters

This endpoint does not need any parameter.

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 Welcome message deleted. -
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 Domain 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_domain_image_upload

bytearray v3_get_domain_image_upload(type, image_id, name, resumable_chunk_number=resumable_chunk_number)

Get image upload status

Required role: Domain administrator on on-site deployments; cloud administrator on cloud deployments.

Checks the progress of a chunked upload made with v3PutDomainImageUpload, or downloads the finished file. With chunk parameters (resumableChunkNumber and friends) it returns 200 if that chunk is already stored and 204 if it still needs to be sent; without them it downloads the image file.

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.DomainApi(api_client)
    type = 'type_example' # str | What kind of file this is, for example `fw` for firmware or `kernel`. Uses the same values as `type` on `POST /v3/images`; see `ImageType` for what each means. Types that need a license feature your license lacks are rejected with 403.
    image_id = 'image_id_example' # str | An ID you choose for the new image: generate a random UUID once per file and use the same value for every chunk of that file. The image record is created with this ID when the first chunk arrives. Use a new UUID for each new upload.
    name = 'name_example' # str | The file name to store, URL-encoded (for example `my%20firmware.ipsw`). Becomes the image `name`.
    resumable_chunk_number = 3.4 # float | Chunk number. When present the response reports whether that chunk was already stored (200) or still needs to be uploaded (204) instead of returning the image file. (optional)

    try:
        # Get image upload status
        api_response = api_instance.v3_get_domain_image_upload(type, image_id, name, resumable_chunk_number=resumable_chunk_number)
        print("The response of DomainApi->v3_get_domain_image_upload:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling DomainApi->v3_get_domain_image_upload: %s\n" % e)

Parameters

Name Type Description Notes
type str What kind of file this is, for example `fw` for firmware or `kernel`. Uses the same values as `type` on `POST /v3/images`; see `ImageType` for what each means. Types that need a license feature your license lacks are rejected with 403.
image_id str An ID you choose for the new image: generate a random UUID once per file and use the same value for every chunk of that file. The image record is created with this ID when the first chunk arrives. Use a new UUID for each new upload.
name str The file name to store, URL-encoded (for example `my%20firmware.ipsw`). Becomes the image `name`.
resumable_chunk_number float Chunk number. When present the response reports whether that chunk was already stored (200) or still needs to be uploaded (204) instead of returning the image file. [optional]

Return type

bytearray

Authorization

BearerAuth

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/octet-stream, application/json

HTTP response details

Status code Description Response headers
200 An empty JSON object when a probed chunk is already stored, the image bytes when the file is stored locally, or the image metadata when no file has been stored yet. -
204 The probed chunk is not stored yet and still needs to be uploaded. -
302 The image is stored in S3; follow the Location header to download it. * Location - URL the client is redirected to.
400 The image identifier is invalid or the image record is missing. -
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 Domain administrator permissions required on on-site deployments; cloud administrator permissions required on cloud deployments. 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 No image with the given identifier. -

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

v3_get_domain_welcome_message

DomainWelcomeMessageResponse v3_get_domain_welcome_message()

Get the welcome message for the authenticated user's domain

Retrieves the welcome message for the domain.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.domain_welcome_message_response import DomainWelcomeMessageResponse
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.DomainApi(api_client)

    try:
        # Get the welcome message for the authenticated user's domain
        api_response = api_instance.v3_get_domain_welcome_message()
        print("The response of DomainApi->v3_get_domain_welcome_message:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling DomainApi->v3_get_domain_welcome_message: %s\n" % e)

Parameters

This endpoint does not need any parameter.

Return type

DomainWelcomeMessageResponse

Authorization

BearerAuth

HTTP request headers

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

HTTP response details

Status code Description Response headers
200 Domain welcome message. -
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 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 No welcome message exists for this domain. -

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

v3_list_domain_software

DomainSoftwareList v3_list_domain_software(limit=limit, offset=offset)

List domain-level firmware images

Required role: Domain administrator.

Lists the firmware images uploaded at domain level (not in a project or instance), one entry per device model. Requires a domain administrator. Use it to find the imageId of a domain firmware upload, for example to delete it with DELETE /v3/images/{imageId}. These images also appear in GET /v3/models/{model}/software for the matching model.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.domain_software_list import DomainSoftwareList
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.DomainApi(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 domain-level firmware images
        api_response = api_instance.v3_list_domain_software(limit=limit, offset=offset)
        print("The response of DomainApi->v3_list_domain_software:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling DomainApi->v3_list_domain_software: %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

DomainSoftwareList

Authorization

BearerAuth

HTTP request headers

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

HTTP response details

Status code Description Response headers
200 Paginated list of domain firmware uploads. -
400 Invalid limit or offset. -
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 Domain 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_patch_domain_welcome_message

DomainWelcomeMessageResponse v3_patch_domain_welcome_message(patch_domain_welcome_message_body=patch_domain_welcome_message_body)

Update a welcome message for a domain

Required role: Domain administrator.

Updates a new welcome message for the authenticated user's domain admin, or updates the existing one. The message is sanitized to prevent XSS.

Example

  • Bearer (JWT) Authentication (BearerAuth):
import corellium
from corellium.models.domain_welcome_message_response import DomainWelcomeMessageResponse
from corellium.models.patch_domain_welcome_message_body import PatchDomainWelcomeMessageBody
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.DomainApi(api_client)
    patch_domain_welcome_message_body = corellium.PatchDomainWelcomeMessageBody() # PatchDomainWelcomeMessageBody |  (optional)

    try:
        # Update a welcome message for a domain
        api_response = api_instance.v3_patch_domain_welcome_message(patch_domain_welcome_message_body=patch_domain_welcome_message_body)
        print("The response of DomainApi->v3_patch_domain_welcome_message:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling DomainApi->v3_patch_domain_welcome_message: %s\n" % e)

Parameters

Name Type Description Notes
patch_domain_welcome_message_body PatchDomainWelcomeMessageBody [optional]

Return type

DomainWelcomeMessageResponse

Authorization

BearerAuth

HTTP request headers

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

HTTP response details

Status code Description Response headers
200 Updated welcome message. -
400 Validation error (e.g. empty message or no fields provided). -
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 Domain 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 No welcome message exists for this domain. -

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

v3_put_domain_image_upload

Dict[str, Optional[object]] v3_put_domain_image_upload(type, image_id, name, body, resumable_chunk_number=resumable_chunk_number, resumable_chunk_size=resumable_chunk_size, resumable_current_chunk_size=resumable_current_chunk_size, resumable_total_size=resumable_total_size, resumable_total_chunks=resumable_total_chunks, corellium_checksum=corellium_checksum, flavor=flavor, x_corellium_image_encoding=x_corellium_image_encoding, x_corellium_image_encapsulated=x_corellium_image_encapsulated, x_corellium_total_file_size=x_corellium_total_file_size, x_corellium_image_password=x_corellium_image_password)

Upload image chunk

Required role: Domain administrator on on-site deployments; cloud administrator on cloud deployments.

Uploads one chunk of a file as a domain-level image: one that belongs to no project or instance and is available across your domain. Requires a domain administrator (on-site) or cloud administrator. Works like v3PutProjectImageUpload: you choose the image ID (a new random UUID), the record is created on the first chunk, and type and name in the path set the image type and name. A domain-level fw image is offered as a choice when anyone in the domain creates a device of the matching model, without an install step. The result is the same as POST /v3/images with no projectId or instanceId followed by PUT /v3/images/{imageId}/file, which applies the same administrator rule to chunk uploads.

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.DomainApi(api_client)
    type = 'type_example' # str | What kind of file this is, for example `fw` for firmware or `kernel`. Uses the same values as `type` on `POST /v3/images`; see `ImageType` for what each means. Types that need a license feature your license lacks are rejected with 403.
    image_id = 'image_id_example' # str | An ID you choose for the new image: generate a random UUID once per file and use the same value for every chunk of that file. The image record is created with this ID when the first chunk arrives. Use a new UUID for each new upload.
    name = 'name_example' # str | The file name to store, URL-encoded (for example `my%20firmware.ipsw`). Becomes the image `name`.
    body = None # bytearray | 
    resumable_chunk_number = 3.4 # float | Which chunk this is, counting from 1. (optional)
    resumable_chunk_size = 3.4 # float | The size, in bytes, you split the file into. Use the same value for every chunk; only the last chunk may be smaller. If you send `corelliumChecksum`, this must equal the block size inside it. (optional)
    resumable_current_chunk_size = 3.4 # float | Actual size in bytes of this chunk's body. (optional)
    resumable_total_size = 3.4 # float | Size of the whole file in bytes. (optional)
    resumable_total_chunks = 3.4 # float | How many chunks the whole file is split into. The upload completes when the last one arrives. (optional)
    corellium_checksum = 'corellium_checksum_example' # str | Optional expected checksum of the whole file, formatted `algorithm$blockSize$hash`. When given, the finished upload is checked and rejected (and the image removed) if it does not match. Required for firmware (`fw`) uploads on air-gapped deployments. (optional)
    flavor = 'flavor_example' # str | Device model (`flavor` from `GET /v3/models`) the image is for. Needed for `partition` uploads when the image is not attached to a device, so the partition name can be checked against that model. (optional)
    x_corellium_image_encoding = 'x_corellium_image_encoding_example' # str | How the file is stored: `plain` (normal) or `encrypted`. Only read on the first chunk, when the image record is created; later chunks cannot change it. (optional)
    x_corellium_image_encapsulated = True # bool | Whether the uploaded file is a ZIP wrapper the platform should unpack. Send false to store the file exactly as uploaded. Only read on the first chunk, when the image record is created. (optional)
    x_corellium_total_file_size = 3.4 # float | Size of the whole file in bytes. Send it on every chunk: the platform uses it to check up front that there is room for the entire file, and answers 507 if there is not, before storing any data. (optional)
    x_corellium_image_password = 'x_corellium_image_password_example' # str | Password of a password-protected file (for example encrypted firmware), used to check the file after upload. Leave out for normal files. (optional)

    try:
        # Upload image chunk
        api_response = api_instance.v3_put_domain_image_upload(type, image_id, name, body, resumable_chunk_number=resumable_chunk_number, resumable_chunk_size=resumable_chunk_size, resumable_current_chunk_size=resumable_current_chunk_size, resumable_total_size=resumable_total_size, resumable_total_chunks=resumable_total_chunks, corellium_checksum=corellium_checksum, flavor=flavor, x_corellium_image_encoding=x_corellium_image_encoding, x_corellium_image_encapsulated=x_corellium_image_encapsulated, x_corellium_total_file_size=x_corellium_total_file_size, x_corellium_image_password=x_corellium_image_password)
        print("The response of DomainApi->v3_put_domain_image_upload:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling DomainApi->v3_put_domain_image_upload: %s\n" % e)

Parameters

Name Type Description Notes
type str What kind of file this is, for example `fw` for firmware or `kernel`. Uses the same values as `type` on `POST /v3/images`; see `ImageType` for what each means. Types that need a license feature your license lacks are rejected with 403.
image_id str An ID you choose for the new image: generate a random UUID once per file and use the same value for every chunk of that file. The image record is created with this ID when the first chunk arrives. Use a new UUID for each new upload.
name str The file name to store, URL-encoded (for example `my%20firmware.ipsw`). Becomes the image `name`.
body bytearray
resumable_chunk_number float Which chunk this is, counting from 1. [optional]
resumable_chunk_size float The size, in bytes, you split the file into. Use the same value for every chunk; only the last chunk may be smaller. If you send `corelliumChecksum`, this must equal the block size inside it. [optional]
resumable_current_chunk_size float Actual size in bytes of this chunk's body. [optional]
resumable_total_size float Size of the whole file in bytes. [optional]
resumable_total_chunks float How many chunks the whole file is split into. The upload completes when the last one arrives. [optional]
corellium_checksum str Optional expected checksum of the whole file, formatted `algorithm$blockSize$hash`. When given, the finished upload is checked and rejected (and the image removed) if it does not match. Required for firmware (`fw`) uploads on air-gapped deployments. [optional]
flavor str Device model (`flavor` from `GET /v3/models`) the image is for. Needed for `partition` uploads when the image is not attached to a device, so the partition name can be checked against that model. [optional]
x_corellium_image_encoding str How the file is stored: `plain` (normal) or `encrypted`. Only read on the first chunk, when the image record is created; later chunks cannot change it. [optional]
x_corellium_image_encapsulated bool Whether the uploaded file is a ZIP wrapper the platform should unpack. Send false to store the file exactly as uploaded. Only read on the first chunk, when the image record is created. [optional]
x_corellium_total_file_size float Size of the whole file in bytes. Send it on every chunk: the platform uses it to check up front that there is room for the entire file, and answers 507 if there is not, before storing any data. [optional]
x_corellium_image_password str Password of a password-protected file (for example encrypted firmware), used to check the file after upload. Leave out for normal files. [optional]

Return type

Dict[str, Optional[object]]

Authorization

BearerAuth

HTTP request headers

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

HTTP response details

Status code Description Response headers
200 Chunk stored. The body is an empty JSON object. Send the next chunk; the image is finished when the last chunk arrives. -
400 Invalid chunk or upload parameters, unreadable body, or a missing/mismatched corelliumChecksum for a firmware upload. -
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 Domain administrator permissions required on on-site deployments; cloud administrator permissions required on cloud deployments. 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 No image with the given identifier. -
507 The image pool does not have enough space for this upload. -

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