Alexa.SmartVision.ObjectDetectionSensor.ErrorResponse Events

If Alexa sends an Alexa.SmartVision.ObjectDetectionSensor directive to your skill and you can't handle it successfully, respond with an Alexa.SmartVision.ObjectDetectionSensor.ErrorResponse event. For details, see Alexa.SmartVision.ObjectDetectionSensor.

ErrorResponse event

In the payload for the Alexa.SmartVision.ObjectDetectionSensor.ErrorResponse, specify the type of the error and include a message with information about the error. For the list of Alexa.SmartVision.ObjectDetectionSensor error types, see Error type values.

ErrorResponse event parameters

Property Description Type Required

type

Type of error. Alexa shares this with the customer.

String

Yes

message

Descriptive message for the error. Alexa doesn't share this with the customer.

String

Yes

ErrorResponse event example

Copied to clipboard.

{
"event": {
    "header": {
      "namespace": "Alexa.SmartVision.ObjectDetectionSensor",
      "name": "ErrorResponse",
      "messageId": "a unique identifier, preferably a version 4 UUID",
      "correlationToken": "correlation token received in the directive",
      "payloadVersion": "1.0"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "OAuth2 bearer token"
      },
      "endpointId" :  "the endpoint identifier" ,
    },
    "payload": {
      "type": "<error type>",
      "message": "<error message>"
    }
  }
}

Error type values

The following table shows the valid Alexa.SmartVision.ObjectDetectionSensor error types.

Property Description

SUBSCRIPTION_REQUIRED

The requested object class wasn't enabled because a subscription is required. If the error was due to an invalid object class, in the payload, include the following parameters:

In addition to the Alexa.SmartVision.ObjectDetectionSensor.ErrorResponse error types, you can also use Alexa error types, such as INVALID_VALUE and include the errorClasses and final list of enabled objectDetectionClasses in the payload. For details about other error types, see Alexa.ErrorResponse error type values.

Examples

Synchronous response example

The following is an example error response that you send synchronously to Alexa. For the list of Alexa.SmartVision.ObjectDetectionSensor.ErrorResponse error types, see Error type values.

Copied to clipboard.

{
    "event": {
        "header": {
            "namespace": "Alexa.SmartVision.ObjectDetectionSensor",
            "name": "ErrorResponse",
            "messageId": "a unique identifier, preferably a version 4 UUID",
            "correlationToken": "correlation token received in the directive",
            "payloadVersion": "1.0"
        },
        "endpoint": {
            "endpointId": "endpoint id"
        },
        "payload": {
            "type": "SUBSCRIPTION_REQUIRED",
            "message": "The classes could not be enabled because a subscription is required.",
            "errorClasses": [{
                "imageNetClass": "cat"
            }],
            "objectDetectionClasses": [{
                "imageNetClass": "person"
            }]
        }
    }
}

Asynchronous response example

The following is an example error response that you send asynchronously to the Alexa event gateway. If you respond asynchronously, include a correlation token and a scope with an authorization token. For details, see Send Events to the Event Gateway.

For the list of Alexa.ThermostatController.Schedule error types, see Error type values.

Copied to clipboard.

{
  "event": {
    "header": {
      "namespace": "Alexa.SmartVision.ObjectDetectionSensor",
      "name": "ErrorResponse",
      "messageId": "a unique identifier, preferably a version 4 UUID",
      "correlationToken": "correlation token received in the directive",
      "payloadVersion": "1.0"
    },
    "endpoint":{
      "scope":{
        "type": "BearerToken",
        "token": "OAuth2 bearer token"
      },
      "endpointId": "endpoint id"
    },
    "payload": {
        "type": "INVALID_VALUE",
        "message": "Invalid parameter value.",
        "errorClasses": [{
            "imageNetClass": "xxxxx"
        }],
        "objectDetectionClasses": [{
            "imageNetClass": "person"
        }]
    }
  }
}