My requirement is to create a component which will allow upload of a video in AEM but needs to be uploaded to Vimeo and provide the video URL in AEM so that it can be sent as a JSON to another service layer.
Author should be able to upload a video in an AEM page while authoring and it must not be uploaded to the AEM DAM. Instead it needs to be uploaded to Vimeo and it must fetch the Vimeo provided URL to AEM so that it can be provided in the JSON when the service layer hits the API exposed by AEM.
In general that should be possible with one caveat: IMO it would be a better idea to store the video inside of AEM before pushing it to Vimeo. This would allow for an asynchronous push to Vimeo and would not block the user until that is finished. It would also allow to retry the upload from AEM without a need for the user to upload it again to AEM. You can add a cleanup job/step after that push to Vimeo has been confirmed to be successfully finished.
That said, I'm not aware of an existing integration with Vimeo.
That integration looks for assets that have certain tags and leverages a dedicated replication agent to push them to YouTube using their API. Maybe this approach can serve as a blueprint or at least an orientation for your custom implementation.