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

Webhook for Storage Sync Event in Label Studio #6598

Open
jchavdatarabut opened this issue Nov 4, 2024 · 1 comment
Open

Webhook for Storage Sync Event in Label Studio #6598

jchavdatarabut opened this issue Nov 4, 2024 · 1 comment

Comments

@jchavdatarabut
Copy link

jchavdatarabut commented Nov 4, 2024

Is your feature request related to a problem?
I’m facing issues with the lack of automation options after syncing storage in Label Studio. Currently, there is no direct way to notify external systems or trigger further workflows when a storage sync operation completes in Label Studio. This missing webhook results in the need for frequent polling to check sync statuses, which increases the complexity of managing data workflows and makes it challenging to keep downstream applications in sync.

Describe the solution you'd like
I would like a webhook to be triggered whenever a storage sync is initiated or completed in Label Studio. Ideally, this webhook should provide details such as:

Storage ID or name
Sync status (e.g., started, completed, failed)
Timestamp of the sync event
Any error details if the sync fails
This would enable automatic workflows based on the sync status and allow downstream applications to receive real-time updates without constant polling.

Describe alternatives you've considered
Polling the API: I’ve tried using periodic API calls to check the sync status, but this approach is inefficient and not scalable, as it increases server load and API traffic.
Custom Scripts: I considered building a custom solution using Label Studio’s SDK, but this requires more development effort and is harder to integrate seamlessly with other tools that rely on event-based triggers.

Additional context
This feature could greatly benefit users who manage large volumes of external data in cloud storage. With this webhook, it would be possible to trigger automatic data processing steps immediately after data syncs, reducing manual intervention. It would also enable better tracking of data availability and faster reaction to sync failures in Label Studio workflows.

@heidi-humansignal
Copy link
Collaborator

Hello there!
Thank you for reaching out and sharing your detailed feature request regarding webhooks for storage sync events in Label Studio. We understand the importance of automating workflows and keeping external systems in sync without the need for constant polling.

Currently, Label Studio does not support triggering webhooks when a storage sync operation is initiated or completed. Webhooks are available for events such as task creation (when tasks are created via API or manual upload), annotation updates, and project changes, but they do not include storage sync events at this time. We have received similar feedback from other users facing the same challenge when syncing tasks from cloud storage. For example, other users have noted that the TASKS_CREATED webhook isn't triggered during storage sync operations.

We appreciate your suggestion and the detailed insights you've provided. I will forward your feature request to our product team for consideration in future releases. While I cannot provide a timeline or guarantee inclusion in the roadmap, please know that we prioritize user feedback when planning new features and improvements.

In the meantime, although you've mentioned that polling the API is inefficient for your use case, you might consider implementing a custom solution using the Label Studio SDK or API to monitor the status of storage sync operations programmatically. By initiating the storage sync via the API and handling the response, you could potentially trigger subsequent actions in your workflow immediately after the sync request is made. This approach may help reduce the overhead compared to continuous polling.

We understand that this may not fully address your needs, but we hope it might offer some interim assistance until a more seamless solution is available if this is prioritized by the product team.
Please let us know if you have any further questions or if there's anything else we can assist you with.

Thanks,

Tyler Conlee
Head of Support
HumanSignal

Comment by Tyler Conlee
Workflow Run

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

2 participants