Skip to main content
Authentication: Most endpoints require an API key for authentication using the Authorization header.

Generating an API Key

To access protected endpoints, you must generate an API key. Follow these steps:
  1. Navigate to the API Key management section in your account settings.
  2. Click Create API Key.
  3. Provide a name for your API Key.
  4. Select the necessary scopes or permissions for the key.
  5. (Optional) Set an expiration date for the API key.
  6. Click Generate and securely store the API key, as it will not be shown again.
Use the generated API Key as a Authorization in your authorization headers when making requests.

Dataset Endpoints

1. Create Dataset

POST /api/dataset
  • Security: API Key (Bearer token)
  • Request Body:
    {
      "name": "string",
      "bucket_key": "string",
      "description": "string (optional)",
      "datasetType": "string",
      "keywords": ["string"],
      "tags": [{ "id": "string" }],
      "files": [{ "name": "string", "size": "number", "provider": "string" }]
    }
    
  • Response: 200 Dataset

2. Get Datasets

GET /api/dataset
  • Security: API Key (Bearer token)
  • Response: 200 { datasets: Dataset[], count: number }

3. Get Dataset by ID

GET /api/dataset/{id}
  • Security: API Key (Bearer token)
  • Response: 200 Dataset

Workflow Endpoints

1. Create Workflow

POST /api/workflow
  • Security: API Key (Bearer token)
  • Request Body:
    {
      "name": "string",
      "description": "string",
      "configs": [
        "string",
        {
          "id": "string",
          "filename": "string",
          "relativeFilePath": "string",
          "sizeInBytes": 0,
          "publicUrl": "string",
          "downloadUrl": "string"
        }
      ],
      "externalId": "string",
      "importHash": "string",
      "accelerators": "string",
      "definitionUri": "string",
      "engine": "string",
      "main": "string",
      "source": "string",
      "tags": [
        {
          "id": "string",
          "name": "string"
        }
      ],
      "platformType": "string",
      "parameterTemplate": "string",
      "runnables": [
        {
          "type": "script",
          "command": "string",
          "containerImage": "string",
          "entryPoint": "string",
          "overrideCmd": true,
          "containerVolumes": "string"
        }
      ]
    }
    
  • Response: 200 Workflow

2. Get Workflows

GET /api/workflow
  • Security: API Key (Bearer token)
  • Response: 200 { workflows: Workflow[], count: number }

3. Get Workflow by ID

GET /api/workflow/{id}
  • Security: API Key (Bearer token)
  • Response: 200 Workflow

Workflow Run Endpoints

1. Create Workflow Run

POST /api/workflow-run
  • Security: API Key (Bearer token)
  • Request Body:
    {
      "name": "string",
      "description": "string (optional)",
      "workflowExecutionType": "immediate | scheduled",
      "workflowId": "string",
      "datasets": [{ "id": "string", "name": "string" }],
      "priority": "string",
      "storageCapacity": 1000,
      "retentionMode": "RETAIN | REMOVE",
      "storageType": "STATIC | DYNAMIC",
      "parameters": { "key": "value" },
      "scheduledTime": "string (optional)"
    }
    
  • Response: 200 WorkflowRun

2. Get Workflow Runs

GET /api/workflow-run
  • Security: API Key (Bearer token)
  • Response: 200 { workflowRuns: WorkflowRun[], count: number }

3. Get Workflow Run by ID

GET /api/workflow-run/{id}
  • Security: API Key (Bearer token)
  • Response: 200 WorkflowRun