> ## Documentation Index
> Fetch the complete documentation index at: https://docs.splox.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Entry Nodes

> Retrieves the entry nodes for a workflow version. The `id` parameter is a workflow version ID, not a workflow ID.

Retrieves the entry nodes for a workflow version. The entry node ID is required when running a workflow via `POST /workflow-requests/run`.

## Usage

<CodeGroup>
  ```bash cURL theme={null}
  curl https://app.splox.io/api/v1/workflows/019c3221-29da-7d08-93fa-c48dbaa8b1db/entry-nodes \
    -H "Authorization: Bearer YOUR_TOKEN"
  ```

  ```python Python theme={null}
  from splox import SploxClient

  client = SploxClient(api_key="YOUR_API_KEY")
  result = client.workflows.get_entry_nodes("WORKFLOW_VERSION_ID")
  for node in result.nodes:
      print(node.id, node.label)
  ```

  ```typescript Node.js theme={null}
  import Splox from "splox";

  const client = new Splox("YOUR_API_KEY");
  const { nodes } = await client.workflows.getEntryNodes("WORKFLOW_VERSION_ID");
  for (const node of nodes) {
    console.log(node.id, node.label);
  }
  ```

  ```go Go theme={null}
  client := splox.NewClient("YOUR_API_KEY")
  result, err := client.Workflows.GetEntryNodes(ctx, "WORKFLOW_VERSION_ID")
  for _, node := range result.Nodes {
      fmt.Println(node.ID, node.Label)
  }
  ```
</CodeGroup>

<Warning>
  The `id` path parameter is a **workflow version ID** (not a workflow ID). Get the version ID from [Get Latest Version](/api-reference/get-workflow-version) or [List Workflows](/api-reference/list-workflows).
</Warning>

## Path Parameters

| Parameter | Type          | Description             |
| --------- | ------------- | ----------------------- |
| `id`      | string (uuid) | **Workflow version ID** |

## Response

```json theme={null}
{
  "nodes": [
    {
      "id": "019c3221-29dc-7735-a4e3-b42ebb1a0cf1",
      "workflow_version_id": "019c3221-29da-7d08-93fa-c48dbaa8b1db",
      "node_type": "start",
      "label": "Basic Agent",
      "pos_x": 100.0,
      "pos_y": 200.0,
      "data": {},
      "created_at": "2025-10-22T10:00:00Z",
      "updated_at": "2025-10-22T10:00:00Z"
    }
  ]
}
```

Most workflows have a single entry node. Workflows with multiple entry points will return all top-level entry nodes.

## Typical Usage

Use this endpoint to discover the `entry_node_id` needed for [Run Workflow](/api-reference/run-workflow):

```bash theme={null}
# 1. Get latest version
VERSION_ID=$(curl -s https://app.splox.io/api/v1/workflows/$WORKFLOW_ID/versions/latest \
  -H "Authorization: Bearer $TOKEN" | jq -r '.id')

# 2. Get entry node
ENTRY_NODE_ID=$(curl -s https://app.splox.io/api/v1/workflows/$VERSION_ID/entry-nodes \
  -H "Authorization: Bearer $TOKEN" | jq -r '.nodes[0].id')

# 3. Run workflow
curl -X POST https://app.splox.io/api/v1/workflow-requests/run \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d "{
    \"workflow_version_id\": \"$VERSION_ID\",
    \"chat_id\": \"$CHAT_ID\",
    \"entry_node_id\": \"$ENTRY_NODE_ID\",
    \"query\": \"Hello!\"
  }"
```

## Notes

<Info>
  **Authentication required:** The authenticated user must own the workflow.
</Info>


## OpenAPI

````yaml GET /workflows/{id}/entry-nodes
openapi: 3.1.0
info:
  title: Splox API
  description: >-
    Run workflows, manage chats, receive events, and monitor execution via the
    Splox API
  version: 1.0.0
  contact:
    name: Splox Support
    email: support@splox.io
    url: https://community.splox.io
servers:
  - url: https://app.splox.io/api/v1
    description: Production API
security: []
tags:
  - name: MCP
    description: Discover MCP servers, manage connections, and execute MCP tools
  - name: Workflows
    description: List, get, and inspect workflows, versions, and nodes
  - name: Workflow Requests
    description: Run workflows, monitor execution, and retrieve results
  - name: Events
    description: Receive external events via Event Hub webhooks
  - name: Chats
    description: Manage chat sessions for workflow interactions
paths:
  /workflows/{id}/entry-nodes:
    get:
      tags:
        - Workflows
      summary: Get Entry Nodes
      description: >-
        Retrieves the entry nodes for a workflow version. The `id` parameter is
        a workflow version ID, not a workflow ID.
      operationId: getEntryNodes
      parameters:
        - name: id
          in: path
          required: true
          description: Workflow version ID
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Entry nodes retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  nodes:
                    type: array
                    items:
                      $ref: '#/components/schemas/Node'
        '404':
          description: Workflow version not found
      security:
        - bearerAuth: []
components:
  schemas:
    Node:
      type: object
      description: Represents a node in a workflow
      properties:
        id:
          type: string
          format: uuid
        workflow_version_id:
          type: string
          format: uuid
        node_type:
          type: string
          enum:
            - start
            - end
            - agent
            - tool
            - switch
            - merge
            - stop
            - template
            - add_memory
            - delete_memory
            - get_memory_data
        label:
          type: string
        pos_x:
          type: number
        pos_y:
          type: number
        parent_id:
          type: string
          format: uuid
          nullable: true
        extent:
          type: string
          nullable: true
        data:
          type: object
          additionalProperties: true
          description: Node-specific configuration data
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      required:
        - id
        - workflow_version_id
        - node_type
        - label
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        API token generated from your Splox account settings. Create tokens at
        https://app.splox.io/account?tab=settings

````