Skip to main content
POST
/
deployments
/
{deployment_id}
/
validate
Validate
curl --request POST \
  --url https://{host}/{version}/deployments/{deployment_id}/validate \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '{
  "is_valid": false,
  "message": "Validation failed!",
  "config_instances": [
    {
      "id": "cfg_inst_123",
      "message": "The config instance contains additional parameters that are not supported by the config schema.",
      "parameters": [
        {
          "message": "The value must be between 10 and 60.",
          "path": [
            "content",
            "telemetry",
            "upload_interval_sec"
          ]
        }
      ]
    }
  ]
}'
{
  "effect": "none",
  "message": "Deployment was voided because the device's current release is different from when the deployment was created.",
  "deployment": {
    "object": "deployment",
    "id": "dpl_123",
    "description": "Deployment for the motion control config instance",
    "status": "validating",
    "activity_status": "validating",
    "error_status": "none",
    "target_status": "pending",
    "device_id": "dvc_123",
    "release_id": "v1.0.0",
    "created_at": "2024-01-01T00:00:00Z",
    "updated_at": "2024-01-01T00:00:00Z",
    "device": null,
    "release": null,
    "config_instances": [
      {
        "object": "config_instance",
        "id": "cfg_inst_123",
        "target_status": "created",
        "activity_status": "created",
        "error_status": "none",
        "status": "created",
        "relative_filepath": "/v1/motion-control.json",
        "created_at": "2021-01-01T00:00:00Z",
        "updated_at": "2021-01-01T00:00:00Z",
        "device_id": "dvc_123",
        "config_schema_id": "cfg_sch_123",
        "config_type_id": "cfg_type_123",
        "device": null,
        "config_schema": null,
        "config_type": null,
        "content": {
          "enable_autonomy": true,
          "enable_remote_control": false,
          "max_payload_kg": 8.5,
          "preferred_speed_mode": "normal",
          "emergency_stop_sensitivity": 0.9,
          "telemetry": {
            "upload_interval_sec": 45,
            "heartbeat_interval_sec": 15
          }
        }
      }
    ]
  }
}

Authorizations

X-API-Key
string
header
required

The API key to use for authentication. Retrieve your API key from the Miru dashboard.

Path Parameters

deployment_id
string
required

The unique identifier of the deployment.

Example:

"dpl_123"

Body

application/json
is_valid
boolean
required

Whether the deployment is valid. If invalid, the deployment is immediately archived and marked as 'failed'.

Example:

false

message
string
required

A message displayed on the deployment level in the UI.

Example:

"Validation failed!"

config_instances
object[]
required

The config instance errors for this deployment.

Response

200 - application/json

Successfully validated the deployment.

effect
enum<string>
required

The effect of the validation.

Available options:
none,
stage,
deploy,
reject,
void
message
string
required

A message explaining the validation effect.

Example:

"Deployment was voided because the device's current release is different from when the deployment was created."

deployment
object
required
I