Updated error codes to help support. Distinguish internal errors from 500 from external service.