1. Implementation
1.1. client creates a JSON array of search terms
1.1.1. { "name":"filter_name, "owner":123, "type": "Backupset" "filter_obj: [ { init_verb: "WHERE", resource: "customer", verb: "IS", query:"xyz" }, { init_verb: "AND", resource: "start", verb: "IS AFTER", query:"25-07-2019:8.00AM" }, { init_verb: "AND", resource: "end", verb: "IS BEFORE", query:"26-07-2019:8.00AM" }, { init_verb: "AND", resource: "completion", verb: "IS", query:"ERROR" }, ] }
1.1.1.1. POST request to API
1.1.1.1.1. OPTION 1: Create a filter object and store the query params as JSON string in table - parse the JSON string and use dict values to query data - return queried data
1.1.1.1.2. OPTION 2: Create a parent filter table Create a one to many relationship with child filter table rows - query the parent filter object and related child objects - use child object as filter params to return filtered dataset