You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Problem description
Currently POST app instance targets multiple EdgeCloudZones, which creates some confusion as to what the correct behavior should be in some cases. The reason it is confusing is because we are effectively combining multiple API calls into one, where any single API call my behave differently from the other.
For example, suppose one of the EdgeCloudZones specified does not exist, but the other ones are ok. Does the API fail just one, or fail all? Is the return value 202 or 400?
Expected behavior
We should design APIs to be as simple as possible and do just one thing. The caller can manage calling the API multiple times if needed. So I suggest the POST app instance API target only a single EdgeCloudZone.
Alternative solution
Extensively document the expected behavior in various corner cases. Not really recommended.
Additional context
The text was updated successfully, but these errors were encountered:
gainsley
added
the
correction
Suggesting corrections of API specification or indicating misalignment with API design guidelines
label
Jun 7, 2024
I suspect the intent was to allow deploying a large number of instances all at once. If that is still needed, then we need to change the response object to allow including both the successful AppInstanceInfo and an array of failure objects that includes the AppId, ZoneId, and error message. We may also want a mass-delete API, otherwise if the client can delete one-by-one, then the client can also certainly create one-by-one.
Problem description
Currently POST app instance targets multiple EdgeCloudZones, which creates some confusion as to what the correct behavior should be in some cases. The reason it is confusing is because we are effectively combining multiple API calls into one, where any single API call my behave differently from the other.
For example, suppose one of the EdgeCloudZones specified does not exist, but the other ones are ok. Does the API fail just one, or fail all? Is the return value 202 or 400?
Expected behavior
We should design APIs to be as simple as possible and do just one thing. The caller can manage calling the API multiple times if needed. So I suggest the POST app instance API target only a single EdgeCloudZone.
Alternative solution
Extensively document the expected behavior in various corner cases. Not really recommended.
Additional context
The text was updated successfully, but these errors were encountered: