I want to understand the output of the list APIs when the entity is not
present / deleted. Suppose I create an account, create a network within it
and acquire a public IP address in the network.

1) ListPublicIpAddresses  - public ip id passed, returns public IP
2) ListPublicIpAddresses - account, domainid passed, returns public IP

Now I delete the public IP (Disassociate).

After this operation, I expect following results:
1) ListPublicIpAddreses - account,domain id passed, result: None (assuming
there was only one)
2) ListPublicIpAddresses - public ip id passed, I expect exception here
because the id must have been removed from DB. But I get "None" as result
here.

If I get None, then can I assume that id is still present in DB but it is
marked as obsolete?

When can I expect an exception in return? And when can I expect None?
Ideally, when we search by Id, then exception should be thrown and when we
expect by passing account/domainid/projectid/networkid etc, then None
should be returned. Do all List APIs follow a similar guideline?

Regards,
Gaurav

Reply via email to