Skip to content

feat: add common REST API sources - #549

Merged
AndreyMarkinPPC merged 1 commit into
google:mainfrom
Vasist10:feat/common-apis-source
Aug 18, 2026
Merged

feat: add common REST API sources#549
AndreyMarkinPPC merged 1 commit into
google:mainfrom
Vasist10:feat/common-apis-source

Conversation

@Vasist10

Copy link
Copy Markdown
Contributor

Adds garf-common-apis, a community library providing first-class GARF sources for OpenWeatherMap and CurrencyAPI built on top of the existing --source rest infrastructure.

This adds:

--source openweather with built-in API key handling and response normalization.
--source currencyapi with header-based authentication and flattened currency response rows.

Users no longer need to manage endpoint URLs, authentication parameters, or complex JSON response structures.

Added 25 mocked tests covering authentication, credential security, query parameter translation, response normalization, and error handling.

To test locally:

pip install -e "libs/community/common_apis[test]"
pytest libs/community/common_apis/tests/

@Vasist10

Copy link
Copy Markdown
Contributor Author

Tried adding garf-common-apis with OpenWeatherMap and CurrencyAPI sources . Added authentication handling, response normalization, docs, examples, and tests.

Please have a look and let me know your feedback.
@AndreyMarkinPPC

@AndreyMarkinPPC AndreyMarkinPPC linked an issue Aug 18, 2026 that may be closed by this pull request
@AndreyMarkinPPC

Copy link
Copy Markdown
Member

Hi @Vasist10, thank you so much for contributing again!
I had the very same idea in #249 but never had any time for work on that.
Out of curiosity, are you using these two APIs (currency and weather) yourself or just referenced them here as an example?

@AndreyMarkinPPC
AndreyMarkinPPC merged commit 4d30773 into google:main Aug 18, 2026
6 checks passed
@Vasist10

Copy link
Copy Markdown
Contributor Author

Hi @Vasist10, thank you so much for contributing again! I had the very same idea in #249 but never had any time for work on that. Out of curiosity, are you using these two APIs (currency and weather) yourself or just referenced them here as an example?

I’ve used OpenWeatherMap before for weather data, but I haven’t personally used CurrencyAPI.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create a garf-rest library

2 participants