Skip to main content

Error Response Format

All errors return a JSON object with an error field:
{
  "error": {
    "code": "INVALID_ARGUMENT",
    "message": "vaultUuid is required"
  }
}

Common Error Codes

CodeDescription
INVALID_ARGUMENTMissing or invalid request parameters
NOT_FOUNDResource (wallet, signing request) not found
PERMISSION_DENIEDAPI token lacks required permissions
UNAUTHENTICATEDMissing or invalid API token
ALREADY_EXISTSResource already exists (e.g., duplicate ref)
FAILED_PRECONDITIONOperation not allowed in current state
RESOURCE_EXHAUSTEDRate limit exceeded
INTERNALInternal server error

HTTP Status Codes

StatusMeaning
200Success
400Bad request - check your parameters
401Unauthorized - check your API token
403Forbidden - insufficient permissions
404Not found
429Rate limited - slow down requests
500Server error - retry later

Handling Errors

import requests

response = requests.post(
    "https://api.mpcvault.com/v1/createWallet",
    headers={"x-mtoken": "YOUR_API_TOKEN"},
    json={"vaultUuid": "..."}
)

if response.status_code != 200:
    error = response.json().get("error", {})
    print(f"Error: {error.get('code')} - {error.get('message')}")