You were faster than my rebasement :-) Good point about ServiceUnavailable, I added it and PulpServiceUnavailable is now its descendant.

I need to distinguish which system in orchestration failed - adding a repository creates a content in candlepin and repository in pulp. Both can probably raise 503 but only in case of pulp I want to let user know that pulp caused the error. Does this make sense? Is there a better way?