Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Shopify Source: migrating to api version 2022-10 is potentially a breaking change #19932

Closed
PhilipCorr opened this issue Nov 30, 2022 · 3 comments

Comments

@PhilipCorr
Copy link
Contributor

Tell us about the problem you're trying to solve

The latest release of shopify’s API (2022-10) requires that the shopify app you are using meets certain requirements as explained here.

If your app doesn't meet these requirements, you will see an error such as:

{
    "errors": "[API] This app is not approved to access REST endpoints with protected customer data"
}

As per the docs, all apps must meet the requirements by July 1, 2023.

Describe the solution you’d like

I can see in source-shopify that the api version gets hardcoded to 2022-10.
I’m curious what airbyte’s stance is on making this a variable that defaults to the latest version (2022-10) but also allows an override to be passed in (via the config maybe?).

This would allow the latest version of the shopify source to work in the meantime while apps are in the process of being updated to meet the requirements set out in the docs linked above. We are currently going through the process to update our app at the moment but would also like to use the latest version of the airbyte connector.

As it currently stands, I believe this PR is potentially a breaking change (depending on the app being used)? Should the semantic versioning have been different here?

Describe the alternative you’ve considered or used

N/A

Are you willing to submit a PR?

Yes, depending on the solution we want to go with.

@PhilipCorr
Copy link
Contributor Author

Hi @bazarnov, just bringing this to your attention as it is related to your PR as linked above in the description. I'm curious what your thoughts are on it?

@bazarnov
Copy link
Collaborator

bazarnov commented Dec 1, 2022

@PhilipCorr
The reason it's hardcoded is that we rely on static JSON schema for data objects. We cannot dynamically generate or fetch these from the server and build them at runtime, they should be prepared before we work with data. Thus, every little API version change leads to schema corrections on our side. There is a difference in data fields available using 2021-07 and 2022-10, for instance.

As for your request, we are in the middle of the way to have OAuth App approvals - stay tuned.

If you're using the OSS version of Airbyte, you can downgrade the connector to the previous version using Settings > Sources and use the 2021-07 API version for now.

@PhilipCorr
Copy link
Contributor Author

Thanks @bazarnov! That makes sense. Closing this as making the api version configurable is a bigger issue than I anticipated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants