Api

API

Technical reference for the Nextmv Cloud API.

The format for timestamps should be RFC3339, e.g.: "2023-01-01T00:00:00Z".

The applications API endpoints can be used to manage, run, and deploy applications to Nextmv Cloud. They are also used to create and manage experiments for each application.

All requests must be authenticated with Bearer Authentication. Make sure your request has a header containing your Nextmv Cloud API key:

  • Key: Authorization
  • Value: Bearer <YOUR-API-KEY>
Authorization: Bearer <YOUR-API-KEY>
Copy

We strongly encourage you to see the list of available endpoints directly in Console. The endpoints are tailored to your specific application. You will find the same collection of endpoints in this page, but with the correct parameters already filled in.

Endpoints

Run execution

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs

New application run.

Create new application run.

Sample curl request for creating a new run (the run_id is returned for a successful request):

curl -sS -L -X POST \
  "https://api.cloud.nextmv.io/v1/applications/$APP_ID/runs?instance_id=$INSTANCE_ID" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $NEXTMV_API_KEY" \
  -d $(cat $INPUT_FILE | jq '{"input": ., "options": {"duration": "2"}}' -c) | jq
Copy

Run metadata

The run metadata can be retrieved while the run is still in progress (or at any point). The metadata.status key will contain the status of the run.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs/{run_id}/metadata

Get run status without output.

Get the status of a run without the output.

Sample curl request for obtaining metadata for a run:

curl -sS -L -X GET \
  "https://api.cloud.nextmv.io/v1/applications/$APP_ID/runs/$RUN_ID/metadata" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $NEXTMV_API_KEY" | jq
Copy

Run result

When you retrieve the full results of a run, the output key will contain the actual output of the run.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs/{run_id}

Get run result.

Get the result of a run.

Sample curl request for getting a run result:

curl -sS -L -X GET \
  "https://api.cloud.nextmv.io/v1/applications/$APP_ID/runs/$RUN_ID" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $NEXTMV_API_KEY" | jq
Copy

Run management

GEThttps://api.cloud.nextmv.io/v1/account/queue

List queued and active runs.

Retrieves a list of queued and active runs.

Sample curl request for getting queued runs:

curl -L -X GET \
  "https://api.cloud.nextmv.io/v1/account/queue" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $NEXTMV_API_KEY"
Copy
GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs

List past runs.

List past runs for application (50 max per request).

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs/{run_id}

Update name and description of run.

Update the name and/or description of a run.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs/{run_id}/input

Get run input.

Gets the input used for a run.

PATCHhttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs/{run_id}/cancel

Cancel a run that is not yet completed.

Cancel a run that is not yet completed.

Sample curl request for canceling a run:

curl -L -X PATCH \
  "https://api.cloud.nextmv.io/v1/applications/$APP_ID/runs/$RUN_ID/cancel" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $NEXTMV_API_KEY"
Copy

The uploadurl endpoint is for submitting large input files for a run. A walk-through of how to submit and retrieve large files for runs can be found in the large payloads section.

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs/uploadurl

Retrieve unique upload URL and ID.

Retrieve a unique URL and ID for uploading run input (for large input files).

Versions

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/versions

Create new version.

Create new application version using the current dev binary.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/versions

List versions.

List all versions for an application.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/versions/{version_id}

Get version information.

Get application version information specified by application and version ID.

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/versions/{version_id}

Update version information.

Update application version information with defined data, specified by application and version ID.

DELETEhttps://api.cloud.nextmv.io/v1/applications/{application_id}/versions/{version_id}

Delete version.

Delete version, specified by application and version ID.

Instances

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/instances

Create new instance.

Create new application instance for a specified version.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/instances

List instances.

List all instances for an application.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/instances/{instance_id}

Get instance information.

Get application instance information specified by application and instance ID.

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/instances/{instance_id}

Update an instance.

Update application instance information with defined data, specified by application and instance ID.

DELETEhttps://api.cloud.nextmv.io/v1/applications/{application_id}/instances/{instance_id}

Delete instance.

Delete application instance, specified by application and instance ID.

Inputs

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/inputs

Creates a managed input.

Creates a managed input.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/inputs

Lists the input created for an application

Lists all the inputs for an application

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/inputs/{input_id}

Updates an input created for an application

Updates an input for an application

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/inputs/{input_id}

Gets an input created for an application

Gets an input for an application

Input sets

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/inputsets

Create new input set.

Create new application input set for experiments.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/inputsets

List input sets.

List all input sets for an application.

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/inputsets/{input_set_id}

Update input set metadata.

Update input set metadata with defined data, specified by application and input set ID.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/inputsets/{input_set_id}

Get input set information.

Get input set information specified by application and input set ID.

Batch Experiments

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/batch

Create and start batch experiment.

Create and start batch experiment.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/batch

List batch experiments.

List batch experiments for an application.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/batch/{batch_id}

Get batch experiment status and results.

Get batch experiment status and results specified by application and batch ID.

DELETEhttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/batch/{batch_id}

Delete a batch experiment.

Delete a batch experiment specified by application and batch ID.

PATCHhttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/batch/{batch_id}

Update a batch experiment.

Update a batch experiment.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/batch/{batch_id}/runs

List batch experiment runs.

List runs used for batch experiment specified by application and batch ID.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/batch/{batch_id}/metadata

Get batch experiment metadata.

Get batch experiment metadata specified by application and batch ID.

Acceptance tests

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/acceptance

Create and start acceptance test.

Create an acceptance test. The test relies on a batch experiment, so a batch experiment must already exist.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/acceptance

List all the existing acceptance tests.

List acceptance tests.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/acceptance/{acceptance_id}

Get acceptance test information.

Get the information of an acceptance test.

DELETEhttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/acceptance/{acceptance_id}

Delete acceptance test.

Delete an acceptance test.

PATCHhttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/acceptance/{acceptance_id}

Update an acceptance test.

Update an acceptance test.

Shadow Tests

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/shadow

Create a shadow test in draft mode.

Create a shadow test in draft mode.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/shadow

List shadow tests.

List shadow tests for an application.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/shadow/{shadow_id}

Get shadow test status and results.

Get shadow test status and results specified by application and shadow ID.

PATCHhttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/shadow/{shadow_id}

Update a shadow test.

Update a shadow test.

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/shadow/{shadow_id}/start

Start shadow test.

Start shadow test.

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/shadow/{shadow_id}/stop

Stop shadow test.

Stop shadow test.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/shadow/{shadow_id}/runs

List shadow test runs.

List runs part of a shadow test.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/shadow/{shadow_id}/metadata

Get shadow test metadata.

Get shadow test metadata specified by application and shadow test ID.

Switchback Tests

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/switchback

Create a switchback test in draft mode.

Create a switchback test in draft mode.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/switchback

List switchback tests.

List shadow tests for an application.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/switchback/{switchback_id}

Get switchback test status and results.

Get switchback test status and results specified by application and switchback test ID.

PATCHhttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/switchback/{switchback_id}

Update a switchback test.

Update a switchback test.

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/switchback/{switchback_id}/start

Start switchback test.

Start switchback test.

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/switchback/{switchback_id}/stop

Stop switchback test.

Stop switchback test.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/switchback/{switchback_id}/runs

List switchback test runs.

List runs part of a switchback test.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/experiments/switchback/{switchback_id}/metadata

Get switchback test metadata.

Get switchback test metadata specified by application and switchback test ID.

Ensembles

POSThttps://api.cloud.nextmv.io/v1/applications/{application_id}/ensembles

Create an ensemble definition.

Create an ensemble definition.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/ensembles

List all ensemble definitions.

List all ensemble definitions for an application.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/ensembles/{ensemble_id}

Get ensemble definition.

Get ensemble definition specified by application and ensemble ID.

PATCHhttps://api.cloud.nextmv.io/v1/applications/{application_id}/ensembles/{ensemble_id}

Update an ensemble definition.

Update an ensemble definition.

DELETEhttps://api.cloud.nextmv.io/v1/applications/{application_id}/ensembles/{ensemble_id}

Delete ensemble definition.

Delete an ensemble definition.

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}/runs/{run_id}/ensemble

Get ensemble run results.

Get ensemble run results specified by application and run ID.

Admin

GEThttps://api.cloud.nextmv.io/v1/applications/{application_id}

Get application information.

Get application information specified by application ID.

PUThttps://api.cloud.nextmv.io/v1/applications/{application_id}

Update application information.

Update application information with defined data, specified by application ID.

DELETEhttps://api.cloud.nextmv.io/v1/applications/{application_id}

Delete application.

Delete application, specified by application ID.

Page last updated

Go to on-page nav menu