Not sure if this is the right forum for this, but I've come across a need for this pattern a few times lately, and I would love to get some opinions on options for how to handle it.
Say I have an app that takes data from an arbitrary number of third-party applications and wants to parse it into a unifying format:
{
"field_1": "value_1",
"field_2": "value_2"
}
So I might have integration 1 return a response that looks like
{
"different_field_1_name": "desired_field_1_value",
"field_2": "desired_field_2_value"
}
And integration 2 return a response that looks like
{
"different_field_1_name_again": "desired_field_1_value",
"different_field_2_name": "desired_field_2_value",
"unneeded_field": "unneeded_value"
}
etc.
Ideally, adding new integrations should be as painless as possible. But every time I've had to do something like this, things like authentication, response formats, weird API quirks, etc. always make it feel like I'm starting from scratch with new integrations. Does anybody have examples of open-source applications that I can look at that do this sort of thing well? Or is there an obvious pattern I'm missing here that makes this easier?