Error codes
Every error is a MapiError with one of these stable codes. Over HTTP it becomes an
RFC 7807 problem document (application/problem+json) whose type ends in the code.
Anything your data or a plugin said is returned separately, as untrusted_text.
Spec and static validation
| Code |
HTTP |
Meaning |
Retryable |
SCHEMA_INVALID |
422 |
The document does not match its schema |
– |
SPEC_PARSE_ERROR |
400 |
The document could not be parsed |
– |
PAYLOAD_TOO_LARGE |
413 |
The document exceeds a size limit |
– |
UNSUPPORTED_API_VERSION |
422 |
Unsupported apiVersion |
– |
REF_UNRESOLVED |
422 |
A reference could not be resolved |
– |
SETTINGS_INVALID |
422 |
Settings do not match their schema |
– |
BINDING_INVALID |
422 |
The data binding is invalid |
– |
SPLIT_INVALID |
422 |
The train/holdout split is invalid |
– |
LEAKAGE_RISK |
422 |
A stateful step runs before the split |
– |
DIM_POLICY_LOOSENED |
422 |
A dim policy can only become stricter |
– |
SCHEMA_DYNAMIC |
422 |
Schema needs a dry-run to resolve |
– |
SIDE_TABLE_COVERAGE |
422 |
A side table is not available |
– |
PLOT_UNSAFE |
422 |
The plot spec violates the plot safety policy |
– |
GUIDED_ANSWERS_INVALID |
422 |
The guided answers do not fit the template |
– |
BUSINESS_PRIORS_INVALID |
422 |
The business priors are inconsistent |
– |
IMPORT_UNSUPPORTED |
422 |
The imported model uses an unsupported feature |
– |
ABOUT_INCOMPLETE |
422 |
A catalog item has no complete About card |
– |
WORKFLOW_INVALID |
422 |
The workflow is not valid |
– |
EXPRESSION_INVALID |
422 |
A branch condition is not a valid expression |
– |
NODE_UNKNOWN |
422 |
A workflow node names an unknown implementation |
– |
SCHEDULE_INVALID |
422 |
The schedule or trigger is not valid |
– |
POLICY_INVALID |
422 |
The governance policy is not valid |
– |
EXPLORE_INVALID |
422 |
The explorer request is not valid |
– |
Score-time coordinate checks (CoordPlan)
| Code |
HTTP |
Meaning |
Retryable |
UNSEEN_LEVELS |
422 |
Unseen levels on a dim that forbids them |
– |
COORD_NOT_ALLOWED |
422 |
Coordinates not allowed by dim policy |
– |
HORIZON_EXCEEDS_FIT |
409 |
Horizon exceeds the fitted range |
– |
MISSING_FUTURE_COVARIATE |
422 |
A future covariate is missing |
– |
NON_CONTIGUOUS_EXTENSION |
422 |
Extension is not contiguous |
– |
CAPABILITY_UNSUPPORTED |
422 |
The model lacks this capability |
– |
RECURSIVE_UNSUPPORTED |
422 |
Recursive forecasting unsupported |
– |
ACTUALS_INVALID |
422 |
The supplied actuals cannot be used for this forecast |
– |
Capabilities
| Code |
HTTP |
Meaning |
Retryable |
MODE_NOT_SUPPORTED |
422 |
Score mode not supported |
– |
CALIBRATION_UNSUPPORTED |
422 |
The model cannot use this calibration data |
– |
SCENARIO_OUT_OF_RANGE |
422 |
The scenario is outside the precomputed grid |
– |
OPTIMIZE_INFEASIBLE |
422 |
The budget constraints cannot all be met |
– |
ACTUALS_NOT_SUPPORTED |
422 |
The model cannot update its forecast with supplied actuals |
– |
Quotas
| Code |
HTTP |
Meaning |
Retryable |
QUOTA_EXCEEDED |
429 |
Quota exceeded |
– |
RATE_LIMITED |
429 |
Too many requests |
yes |
API
| Code |
HTTP |
Meaning |
Retryable |
UNAUTHENTICATED |
401 |
Authentication required |
– |
FORBIDDEN |
403 |
Not allowed |
– |
NOT_FOUND |
404 |
Not found |
– |
CONFLICT |
409 |
Conflict |
– |
IDEMPOTENCY_CONFLICT |
409 |
Idempotency key reused |
– |
PRECONDITION_FAILED |
412 |
Precondition failed |
– |
PROMOTION_BLOCKED |
409 |
The scorecard blocks the promotion |
– |
OVERRIDE_REQUIRED |
409 |
Promotion needs an administrator override with a reason |
– |
WEBHOOK_URL_BLOCKED |
422 |
The egress policy does not allow the webhook URL |
– |
WEBHOOK_SIGNATURE_INVALID |
401 |
Webhook signature invalid |
– |
EMBED_NOT_ALLOWED |
422 |
Only platform plot recipes can be embedded |
– |
LINK_EXPIRED |
410 |
The link has expired or was revoked |
– |
EMAIL_NOT_ALLOWED |
422 |
This e-mail address cannot sign up |
– |
TERMS_NOT_ACCEPTED |
422 |
The terms of service were not accepted |
– |
EMAIL_NOT_VERIFIED |
403 |
The e-mail address is not verified |
– |
IDENTITY_VERIFICATION_REQUIRED |
403 |
Identity verification is necessary |
– |
CHOOSER_ANSWER_INVALID |
422 |
A chooser answer is not valid |
– |
WORKFLOW_NOT_RUNNABLE |
409 |
The workflow revision cannot be run (it has errors) |
– |
VALIDATION_TRANSITION_INVALID |
409 |
The model's validation status does not allow this |
– |
SELF_APPROVAL_FORBIDDEN |
403 |
Approver and submitter must be different people |
– |
NOT_VALIDATED |
409 |
The governance policy needs a validated model |
– |
NOT_READY |
409 |
The result is not ready yet |
yes |
Run failures
| Code |
HTTP |
Meaning |
Retryable |
USER_CODE_ERROR |
422 |
User or plugin code failed |
– |
RESOURCE_EXHAUSTED |
507 |
Run exhausted its resources |
– |
INFRA_ERROR |
503 |
Infrastructure error |
yes |
INTEGRITY_FAILURE |
500 |
Output integrity check failed |
– |
TIMEOUT |
504 |
Run timed out |
– |
SANDBOX_VIOLATION |
422 |
Sandbox policy violated |
– |
CANCELLED |
409 |
Run was cancelled |
– |
EXPRESSION_ERROR |
422 |
A branch condition could not be evaluated |
– |
INGEST_UNSAFE_FILE |
422 |
The upload was refused: it is unsafe to read |
– |
Internal
| Code |
HTTP |
Meaning |
Retryable |
INTERNAL_ERROR |
500 |
Internal error |
yes |