I would say it would depend largely on performance and how often the parts list is changed. If it's faster to fetch what you need for each transaction from the API, I'd just do that. If, OTOH, if the parts list doesn't change very frequently and it's a performance hit to fetch every time, then update at night and use a local table. (I suspect that's likely faster, but if the parts list changes a lot, then you risk not having the most up-to-date information.)
Not much help, but it's not a simple "this is better" answer.
Thankfully the parts API Is quite quick, And is the preferred method, But then I hit the block of how to display the parts list within Filemaker.
The parts come in as "Part-Number" "Description"
Idealy I would love to just be able to put all the parts into a list and display them, But from my understanding, I can either use Repetitions, Which are a nightmare to work with, Or use a portal which means every search would have to populate a Table, which when having up to 30 engineers updating parts at the same time, could cause issues (The parts returned are spesific to the units serial submitted to Apple)
Unless there is another method that I am missing But thank you for the Info so far!
Perhaps a Virtual List?