Files
threshold/internal/proto/local/controller/api/v1/error.proto
T
Todd Knight aa4157639c Change Format of API Error (#784)
This is a wire breaking change for json errors since we have removed and renamed a few fields, and changed part of the structure of the returned json error.

* Remove redundant fields in Status, details.error_id, details.TraceId and details.request_id from API errors.

* Added wrapped errors and "ops" field to indicate the internal operation of the errors returned by the API.

* Added error cli error reporting of Op and wrapped errors.
2020-12-07 14:25:16 -07:00

43 lines
1.3 KiB
Protocol Buffer

syntax = "proto3";
package controller.api.v1;
option go_package = "github.com/hashicorp/boundary/internal/gen/controller/api;api";
// Error information relevant to an error that was wrapped by the backend.
message WrappedError {
// An string indicating what operation was being run when the wrapped error was created.
string op = 1;
string message = 2;
}
// Additional details regarding a specific error.
message ErrorDetails {
// Request-field-specific error details.
repeated FieldError request_fields = 1 [json_name="request_fields"];
// The errors that were wrapped in the backend for this returned error.
repeated WrappedError wrapped_errors = 2 [json_name="wrapped_errors"];
}
// FieldErrors contains error information on a per field basis.
message FieldError {
// The name of the field.
string name = 1;
// The description of the error.
string description = 2;
}
// Error is returned by the JSON API when an error occurs.
message Error {
// The kind of error this is.
string kind = 1;
// An string indicating what operation was being run when the error was returned.
string op = 2;
// A human-readable explanation specific to this occurrence of the error.
string message = 3;
// Additional metadata regarding the error. Depending on the error, different fields will be populated.
ErrorDetails details = 4;
}