diff --git a/schemas/com.snowplowanalytics.iglu/client_error/jsonschema/1-0-0 b/schemas/com.snowplowanalytics.iglu/client_error/jsonschema/1-0-0 new file mode 100644 index 000000000..6eca5cd46 --- /dev/null +++ b/schemas/com.snowplowanalytics.iglu/client_error/jsonschema/1-0-0 @@ -0,0 +1,86 @@ +{ + "$schema": "http://iglucentral.com/schemas/com.snowplowanalytics.self-desc/schema/jsonschema/1-0-0#", + "description": "Possible unsuccessful result produced by Iglu Client", + "self": { + "vendor": "com.snowplowanalytics.iglu", + "name": "client_error", + "format": "jsonschema", + "version": "1-0-0" + }, + "type": "object", + "anyOf": [ + { + "properties": { + "error": { + "enum": ["ResolutionError"] + }, + "lookupHistory": { + "type": "array", + "minItems": 1, + "items": { + "type": "object", + "properties": { + "repository": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "properties": { + "error": { + "enum": ["ClientFailure", "RepoFailure", "NotFound"] + }, + "message": { + "type": "string" + } + }, + "required": ["error"] + } + }, + "attempts": { + "type": "integer", + "minimum": 0 + }, + "fatal": { + "type": "boolean" + } + }, + "required": ["repository", "errors", "attempts", "fatal"], + "additionalProperties": false + } + } + }, + "required": ["error", "lookupHistory"], + "additionalProperties": false + }, + { + "properties": { + "error": { + "enum": ["ValidationError"] + }, + "dataReports": { + "type": "array", + "minLength": 1, + "items": { + "properties": { + "message": { + "type": "string" + }, + "path": { + "type": ["string", "null"] + }, + "keyword": { + "type": ["string", "null"] + }, + "target": { + "type": "array" + } + }, + "required": ["message", "path", "keyword", "target"], + "additionalProperties": false + } + } + } + } + ] +}