Skip to main content

Base URL

All API requests should be made to: https://api.omium.ai/api/v1

Authentication

All API requests require authentication using an API key. Include it in the X-API-Key header or as a Bearer token.
# Using X-API-Key header (recommended)
curl -X GET "https://api.omium.ai/api/v1/workflows" \
  -H "X-API-Key: omium_xxxxx"

# Using Bearer token
curl -X GET "https://api.omium.ai/api/v1/workflows" \
  -H "Authorization: Bearer omium_xxxxx"

Endpoints

List Workflows

GET /workflows List all workflows for the authenticated tenant. Query Parameters:
  • status: draft | published | archived
  • workflow_type: crewai | langgraph | autogen | semantic_kernel | custom
  • page: Page number (default: 1)
  • page_size: Items per page (default: 20)
Response:
{
  "items": [
    {
      "id": "workflow_abc",
      "name": "My Workflow",
      "description": "Workflow description",
      "workflow_type": "crewai",
      "status": "published",
      "created_at": "2025-01-01T12:00:00Z"
    }
  ],
  "total": 100,
  "page": 1,
  "page_size": 20
}

Create Workflow

POST /workflows Create a new workflow. Request Body:
{
  "name": "My New Workflow",
  "description": "A detailed description of the workflow.",
  "workflow_type": "crewai",
  "definition": {
    // Framework-specific workflow definition
    "agents": [...],
    "tasks": [...]
  },
  "tags": ["tag1", "tag2"],
  "status": "draft"
}
Response:
{
  "id": "workflow_xyz",
  "name": "My New Workflow",
  "status": "draft",
  "created_at": "2025-01-01T12:05:00Z"
}

Get Workflow

GET /workflows/{workflow_id} Retrieve details of a specific workflow. Path Parameters:
  • workflow_id: The ID of the workflow.
Response:
{
  "id": "workflow_xyz",
  "name": "My New Workflow",
  "description": "A detailed description of the workflow.",
  "workflow_type": "crewai",
  "definition": { ... },
  "tags": ["tag1", "tag2"],
  "status": "draft",
  "created_at": "2025-01-01T12:05:00Z",
  "updated_at": "2025-01-01T12:05:00Z"
}

Update Workflow

PUT /workflows/{workflow_id} Update an existing workflow. Path Parameters:
  • workflow_id: The ID of the workflow to update.
Request Body:
{
  "name": "Updated Workflow Name",
  "description": "An updated description.",
  "status": "published",
  "definition": { ... }
}
Response:
{
  "id": "workflow_xyz",
  "name": "Updated Workflow Name",
  "status": "published",
  "updated_at": "2025-01-01T12:10:00Z"
}

Delete Workflow

DELETE /workflows/{workflow_id} Delete a workflow. Path Parameters:
  • workflow_id: The ID of the workflow to delete.
Response: 204 No Content