feat: improve composio oauth experience #4613
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces several changes to the
ComposioAPIComponent
class in thecomposio_api.py
file to enhance authentication handling and input configuration. The key changes include the addition of new input types for authentication, modifications to theupdate_build_config
method to handle authentication status, and the removal of redundant input fields.Enhancements to authentication handling:
LinkInput
for authentication link andStrInput
for authentication status in theComposioAPIComponent
class to facilitate user authentication with the selected app.update_build_config
method to check the authentication status of the selected app and update the configuration accordingly. This includes generating OAuth URLs or indicating the need for an API key.Input configuration improvements:
auth_status_config
field and its related logic, as it has been replaced by the newauth_link
andauth_status
inputs.required
attribute of theaction_names
input toTrue
to ensure that actions are always specified.Dependency updates:
NoItemsFound
exception fromcomposio.client.exceptions
to handle cases where no connection is found for the selected app.