# Error Taxonomy All API errors must use a consistent shape. ```json { "error": { "code": "DATASET_UNSUPPORTED_FORMAT", "message": "The uploaded file format is not supported for this operation.", "details": {}, "trace_id": "optional" } } ``` ## Core Error Codes - `VALIDATION_ERROR` - `NOT_FOUND` - `CONFLICT` - `FEATURE_DISABLED` - `DATASET_UPLOAD_FAILED` - `DATASET_UNSUPPORTED_FORMAT` - `CRS_MISSING` - `CRS_UNSUPPORTED` - `GEOMETRY_INVALID` - `RASTER_METADATA_FAILED` - `VECTOR_METADATA_FAILED` - `PROCESSING_JOB_FAILED` - `MODEL_UNAVAILABLE` - `INFERENCE_FAILED` - `REFERENCE_LAYER_MISSING` - `QA_MATCHING_FAILED` - `EXPORT_FAILED` ## Frontend Requirements Every error code should render a useful message and suggested next action.