CRREL / GRiD-API

9 stars 3 forks source link

Remove is_active from v3 AOI objects, as GRiD only returns active AOIs #22

Closed chambbj closed 7 years ago

chambbj commented 7 years ago

@AlexMountain I don't think that API users can ever see AOI is_active == false, as GRiD filters these out prior to sending the response, right?

I guess this begs the question of whether or not there is a situation in which users might want inactive AOIs, or should we eliminate it from the response?

On the other hand, what's the harm in leaving it there and returning all AOIs, regardless of the is_active value, and letting them filter them out client-side? Are inactive AOIs dead or simply hidden, e.g., can I generate an export from an inactive AOI?

How does GRiD use it internally? Is it simply a retention policy thing? Or maybe there is some sort of AOI recovery capability? If the latter (or similar), should that be exposed to API users too?

It seems to me that if you have use for is_active, but are not returning it via the API, this must be one of the areas where you are not using your own API internally.

AlexMountain commented 7 years ago

An inactive AOI is a deleted AOI. So my initial feeling is that we shouldn't return them because you've essentially deleted them. They are kept around as objects still for retention, history, and audit purposes. They can be restored if needed but it is not a normal operation to do, and doesn't really happen as far as I'm aware.

We totally omit the inactive AOIs in the UI too so functionally this should be the same for both UI/API.

chambbj commented 7 years ago

So, do you use the API in this context - listing AOIs?

If so, and you too are relying on the endpoint to filter the deleted ones for you (i.e., you are not using is_active) then would you agree that this particular element of the response is not needed?

trevorskaggs commented 7 years ago

Seems like we should remove the field (as it doesn't provide any real information to the user). @chambbj We keep the aois around for historical/troubleshooting reasons, but they are not intended to be re-enabled.

AlexMountain commented 7 years ago

I agree it should be omitted. We were just using a built in object serializer for AOIs so it was included. I'll look to remove for v3.

AlexMountain commented 7 years ago

is_active and source have been removed from AOI returns on v3 as they are really only used internally to GRiD.