openapi: 3.1.0 info: title: LittleHorse REST External Events Task Definitions API description: The LittleHorse REST API provides HTTP endpoints for managing workflow specifications (WfSpec), workflow runs (WfRun), task definitions (TaskDef), external event definitions, user tasks, and other resources in the LittleHorse workflow engine. version: 0.12.0 contact: name: LittleHorse url: https://littlehorse.dev/ license: name: Server Side Public License url: https://www.mongodb.com/licensing/server-side-public-license servers: - url: '{baseUrl}' description: LittleHorse Server variables: baseUrl: default: http://localhost:2023 tags: - name: Task Definitions paths: /taskDef: get: operationId: listTaskDefs summary: List task definitions description: Returns all registered task definitions. tags: - Task Definitions responses: '200': description: Successful response content: application/json: schema: type: object properties: results: type: array items: $ref: '#/components/schemas/TaskDef' post: operationId: putTaskDef summary: Create or update a task definition description: Creates or updates a task definition. tags: - Task Definitions requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PutTaskDefRequest' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/TaskDef' /taskDef/{name}: get: operationId: getTaskDef summary: Get a task definition description: Returns a specific task definition. tags: - Task Definitions parameters: - name: name in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/TaskDef' delete: operationId: deleteTaskDef summary: Delete a task definition description: Deletes a task definition. tags: - Task Definitions parameters: - name: name in: path required: true schema: type: string responses: '200': description: TaskDef deleted components: schemas: PutTaskDefRequest: type: object required: - name properties: name: type: string inputVars: type: array items: type: object properties: type: type: string name: type: string TaskDef: type: object properties: id: type: object properties: name: type: string inputVars: type: array items: type: object createdAt: type: string format: date-time