[openstack-dev] [nova] Should the server create API return 404 errors?
cbkyeoh at gmail.com
Mon Nov 25 23:00:59 UTC 2013
On Tue, Nov 26, 2013 at 7:27 AM, Matt Riedemann
<mriedem at linux.vnet.ibm.com>wrote:
> Aaron Rosen is working a patch  to handle a NetworkNotFound exception
> in the server create API. For the V2 API this will return a 400 error.
> For the V3 API this will return a 404 because of a V3-specific patch .
> The API docs list 404 as a valid response code, but is it intuitive for a
> POST request like this?
Yea I think in this case we've just got this wrong for the V3 API here.
It's validating a parameter, and although the client (glance/neutron etc)
may return a 404 to us, we should be returning a 400 (with a decent
message) to our client.
> To muddy the waters more, ImageNotFound, FlavorNotFound and
> KeypairNotFound are translated to 400 errors in both the V2 and V3 APIs.
> So why should the network-specific NotFound exceptions be a 404 but the
> others aren't?
> From a programmatic perspective, I should validate that my request
> parameters are valid before calling the API in order to avoid a 404. From a
> user's perspective, a 404 seems strange - does it mean that the server I'm
> trying to create isn't found? No, that's counter-intuitive.
> Ultimately I think we should be consistent, so if 404 is OK, then I think
> the V3 API should make ImageNotFound, FlavorNotFound and KeypairNotFound
> return a 404 also.
At the very least we should be consistent across our API.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the OpenStack-dev