A client recently came to us with a massive database of parameters that worked hard to match with their inventory. Basically, we received an Excel spreadsheet that had one line per possible combination of parameters followed (on the same line) by 4 items that match that combination. What they needed to get done was to build some kind of form that would allow a website visitor to enter some information and receive a custom selection of products that matched his profile.
We took each line and turned them into “Profiles”. Each unique combination of parameters became a unique profile in the database. We then added an entry for each inventory item and created a relationship between each profile and the inventory.
We saved the form data to a “Requests” table and tried to find a match from the “Profiles” table. Once a match was found, we would retrieve the inventory linked to that profile and display to the client.
All the data is stored on Airtable and is interfaced using an API we built to save, match and retrieve inventory.
Once a request is saved, the results will never changed, when a client visits the website again, we use a static json file stored on the server to retrieve the results. This speeds up the requests by a lot. The API no longer has to query Airtable, match the results and respond. It has its response ready to go!