dill21yu opened a new issue, #17501:
URL: https://github.com/apache/dolphinscheduler/issues/17501

   ### Search before asking
   
   - [x] I had searched in the 
[issues](https://github.com/apache/dolphinscheduler/issues?q=is%3Aissue) and 
found no similar feature requirement.
   
   
   ### Description
   
   Propose a Generic Third-party System API Connector to enable 
DolphinScheduler to schedule tasks on any external system via REST APIs.
   
   Currently, DS lacks a unified way to integrate with systems like SeaTunnel, 
Flink Session, or custom platforms that expose task control via RESTful 
interfaces. This feature would provide a configurable framework (managing 
endpoints for auth, task list, start, status, stop) instead of requiring custom 
plugins for each system, greatly expanding DS's scheduling capabilities.
   
   
   
   ### Use case
   
   As a DS administrator or user,
   I want to register an external system (e.g., company's customized  SeaTunnel 
system) or other by providing its base URL, authentication, and specific API 
endpoints (to list, start, check status, and stop tasks),
   So that I can easily select and schedule that system's tasks directly within 
a DolphinScheduler workflow.
   
   The expected behavior is:
   1、In the DS UI, I can add a new "Third-party System" config for our 
SeaTunnel server's API.
   2、When building a workflow, I can choose the "Generic API Task" type, select 
the registered "SeaTunnel" system, and see a dropdown list of available jobs 
fetched from its API.
   3、Upon selecting a job and running the workflow, DS automatically calls the 
start API, polls the status API until completion, and reflects the final status 
(success/failure) in DS.
   4、I can also manually stop the task from DS, which triggers the stop API 
call to the external system.
   This will allow us to use DS as a unified scheduler for many API-based tools 
without waiting for specific plugin development.
   
   <img width="1124" height="963" alt="Image" 
src="https://github.com/user-attachments/assets/58e9e1bf-2943-457c-bfca-8a3afc592459";
 />
   
   <img width="699" height="902" alt="Image" 
src="https://github.com/user-attachments/assets/458ccc7a-f817-43c3-9b6e-b71a524d4d23";
 />
   
   <img width="700" height="900" alt="Image" 
src="https://github.com/user-attachments/assets/87028619-78ee-4611-a9ae-71674790ad25";
 />
   
   <img width="651" height="354" alt="Image" 
src="https://github.com/user-attachments/assets/0095a395-0462-4d88-b41a-e340db8dd933";
 />
   
   <img width="1194" height="931" alt="Image" 
src="https://github.com/user-attachments/assets/5461f7f2-7b9d-4fcb-a409-dc5e4eda5c7e";
 />
   
   
   ### Related issues
   
   _No response_
   
   ### Are you willing to submit a PR?
   
   - [x] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: 
[email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to