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
🎉 New Source - KoboToolbox #24138
🎉 New Source - KoboToolbox #24138
Conversation
Thanks for the contribution @lshrinivas do you have a sandbox/test account to share and speed up tests? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some comments.
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/spec.yaml
Show resolved
Hide resolved
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/spec.yaml
Outdated
Show resolved
Hide resolved
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/spec.yaml
Show resolved
Hide resolved
airbyte-integrations/connectors/source-kobotoolbox/unit_tests/test_source.py
Outdated
Show resolved
Hide resolved
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/helpers.py
Outdated
Show resolved
Hide resolved
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/source.py
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Ishankoradia please check my comments and fix them.
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/source.py
Outdated
Show resolved
Hide resolved
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/source.py
Outdated
Show resolved
Hide resolved
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/helpers.py
Outdated
Show resolved
Hide resolved
…eature/source_kobo_tool
…eature/source_kobo_tool
@marcosmarxm resolved all your comments and have also added the incremental sync for the connector. |
@marcosmarxm can you please review this PR and let me know if there are any changes required. |
airbyte-integrations/connectors/source-kobotoolbox/source_kobotoolbox/source.py
Outdated
Show resolved
Hide resolved
Hello @Ishankoradia and thanks for the contribution and spending time building this connector. I'm declining it because today I can't find Kobotoolbox API documentation and for this reason it will make very hard to maintain the connector. You can use the connector for your project following instructions here: https://docs.airbyte.com/operator-guides/using-custom-connectors |
@marcosmarxm is this not enough - https://kf.kobotoolbox.org/api/v2/ ? |
What
Describe what the change is solving
KoboToolbox is a free and open source platform for the collection, management, and visualization of data. As the most widely used primary data collection tool in the nonprofit sector, it is the tool of choice for over 14,000 social impact organizations worldwide. The KoboToolbox connector will help these organizations streamline their data ingestion process without the need to write any custom scripts or manual download data from KoboToolbox account.
It helps to add screenshots if it affects the frontend. - doesn't affect the frontend
How
Describe the solution
The current version of the connector works with the KoboToolbox APIs to provide data ingestion of all forms in an organization's KoboToolbox account. The implemented version of the connector currently allows for all modes - full refresh and incremental including de-duped mode.
Pre-merge Checklist
Expand the relevant checklist and delete the others.
New Connector : KoboToolbox
Community member or Airbyter
airbyte_secret
./gradlew :airbyte-integrations:connectors:<name>:integrationTest
.README.md
bootstrap.md
. See description and examplesdocs/integrations/<source or destination>/<name>.md
including changelog. See changelog exampledocs/integrations/README.md
airbyte-integrations/builds.md
Airbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.
/test connector=connectors/<name>
command is passing/publish
command described hereTests
Unit Tests
unit_tests/test_source.pyunit_tests/test_stream.py
Acceptance Tests