Is it possible to provide an endpoint in vets-api that aggregates the different appointments types? This would provide a more seamless communication with vets-website when requesting past appointment data. Currently, vets-website has to make multiple requests, one for each type of appointment to retrieve past appointment information. The spike here would be to determine if it makes sense to combine these calls into a single request.
A major challenge facing this type of request is the underlying schema for each type of appointment is significantly different. Currently the front-end handles the associated data transformation that facilitates surfacing that data in vets-website. If vets-api were to aggregate that data, it would take over some of the data transformation logic; this would be a break from the standard architecture, but worth investigating.
Relates to work in: #18976, #18164
Deliverables
[ ] A short write-up identifying the differences in each schema type.
[ ] A short proposal of if/how a common subset of each schema can be abstracted.
[ ] A short write-up highlighting the benefits/detractors the team can use to determine if this would be valuable.
Issue Description
Is it possible to provide an endpoint in vets-api that aggregates the different appointments types? This would provide a more seamless communication with vets-website when requesting past appointment data. Currently, vets-website has to make multiple requests, one for each type of appointment to retrieve past appointment information. The spike here would be to determine if it makes sense to combine these calls into a single request.
A major challenge facing this type of request is the underlying schema for each type of appointment is significantly different. Currently the front-end handles the associated data transformation that facilitates surfacing that data in vets-website. If vets-api were to aggregate that data, it would take over some of the data transformation logic; this would be a break from the standard architecture, but worth investigating.
Relates to work in: #18976, #18164
Deliverables