Skip to main content
Glama
opus-00-get-workflow-details.md7.1 kB
# Get Workflow Details & Schema **GET** /workflow/{workflow_Id} Before you can execute a job, you must know what inputs it expects. This endpoint provides the exact schema for all required inputs for a workflow with a given `workflow_id`. The response is a large JSON object containing the workflow's name, description, blueprint, and, most importantly, the `jobPayloadSchema`. --- ## Parameters **workflowId** *required* `string` _(path)_ - ID of the workflow to retrieve details for **Headers** - x-service-key: `<your_service_key>` --- ## Responses **Code**: `200` **Media Type**: `application/json` *Controls accept header ### Example response: ```json { "createdAt": "2023-10-05T14:48:00.000Z", "workflowId": "workflow-123", "name": "workflow-123", "description": "workflow-123", "industry": "workflow-123", "active": true, "workflowBlueprint": { "id": "blueprint-123", "name": "My Workflow Blueprint", "objective": "To automate a specific process", "description": "This blueprint defines the workflow process.", "input": { "description": "This is a workflow IO description.", "inputItems": [ { "description": "This is a workflow item description.", "workflowInputItemClassificationTags": [ "tag1", "tag2" ], "workflowOutputItemClassificationTags": [ "tag3", "tag4" ] } ], "outputItems": [ { "description": "This is a workflow item description.", "workflowInputItemClassificationTags": [ "tag1", "tag2" ], "workflowOutputItemClassificationTags": [ "tag3", "tag4" ] } ] }, "output": { "description": "This is a workflow IO description.", "inputItems": [ { "description": "This is a workflow item description.", "workflowInputItemClassificationTags": [ "tag1", "tag2" ], "workflowOutputItemClassificationTags": [ "tag3", "tag4" ] } ], "outputItems": [ { "description": "This is a workflow item description.", "workflowInputItemClassificationTags": [ "tag1", "tag2" ], "workflowOutputItemClassificationTags": [ "tag3", "tag4" ] } ] }, "process": { "description": "This is a workflow IO description.", "inputItems": [ { "description": "This is a workflow item description.", "workflowInputItemClassificationTags": [ "tag1", "tag2" ], "workflowOutputItemClassificationTags": [ "tag3", "tag4" ] } ], "outputItems": [ { "description": "This is a workflow item description.", "workflowInputItemClassificationTags": [ "tag1", "tag2" ], "workflowOutputItemClassificationTags": [ "tag3", "tag4" ] } ] }, "requiredSteps": [ { "stepNumber": 1, "input": "input-data", "output": "output-data", "objective": "Achieve a specific goal", "description": "This step processes the input data.", "constraint": "Must be completed within 2 hours", "workflowStepClassificationTags": [ "step-tag1", "step-tag2" ] } ], "workflowClassificationTags": [ "classification-tag1", "classification-tag2" ], "dataSets": [ "dataset1", "dataset2" ], "embeddingText": "Embedding text example", "generationMarker": { "key": "value" }, "industry": "finance", "country": "USA", "storageMarker": { "key": "value" } }, "executionEstimation": { "humanCost": 100.5, "humanPrice": 150.75, "opusCost": 50.25, "opusPrice": 75.5, "humanTime": 2.5, "opusTime": 1.2, "accuracy": 95 }, "workflowImage": "https://example.com/workflow-image.png", "jobPayloadSchema": {}, "jobResultsPayloadSchema": { "additionalProp1": {} } } ``` --- ## jobPayloadSchema Example From the above schema, the `jobPayloadSchema` object defines all workflow inputs, their unique variable names (e.g., `workflow_input_we4tej0ly`), and their data types (e.g., str, file, bool). You will use this exact structure to build your job execution request to Opus. Example `jobPayloadSchema` from a `GET /workflow/{id}` response: ```json { "jobPayloadSchema": { "workflow_input_we4tej0ly": { "id": "we4tej0ly", "variable_name": "workflow_input_we4tej0ly", "display_name": "TextInput", "type": "str", "is_nullable": false }, "workflow_input_a0hk6ujuo": { "id": "a0hk6ujuo", "variable_name": "workflow_input_a0hk6ujuo", "display_name": "NumberInput", "type": "float", "is_nullable": false }, "workflow_input_h69vx5i4a": { "id": "h69vx5i4a", "variable_name": "workflow_input_h69vx5i4a", "display_name": "FileInput(Single)", "type": "file", "is_nullable": false, "tags": [ { "variable_name": "allowed_file_types", "value": [ "JPEG", "PNG", "JPG", "PDF" ] } ] }, "workflow_input_m2z6rkzgj": { "id": "m2z6rkzgj", "variable_name": "workflow_input_m2z6rkzgj", "display_name": "BoolInput", "type": "bool", "is_nullable": false }, "workflow_input_2kbsjrx1y": { "id": "2kbsjrx1y", "variable_name": "workflow_input_2kbsjrx1y", "display_name": "ListInput", "type": "array", "is_nullable": false }, "workflow_input_bzti690ga": { "id": "bzti690ga", "variable_name": "workflow_input_bzti690ga", "display_name": "ObjectInput", "type": "object", "is_nullable": false }, "workflow_input_k3ayfjyh7": { "id": "k3ayfjyh7", "variable_name": "workflow_input_k3ayfjyh7", "display_name": "DateInput", "type": "date", "is_nullable": false }, "workflow_input_auqgnzk8d": { "id": "auqgnzk8d", "variable_name": "workflow_input_auqgnzk8d", "display_name": "FileInput(Multiple)", "type": "array_files", "is_nullable": false, "tags": [ { "variable_name": "allowed_file_types", "value": [ "JPEG", "PNG", "JPG", "PDF" ] } ] } } } ```

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Moenamatics/Opus-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server