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

# Publish nodes

> Workflow-graph publish nodes: ports, params, executor status, and spend class.

E. Publish.

Facts on this page are introspected from `cli/lib/schemas/workflow.ts` and the live executor registry — never hand-edited.

### `publish`

**Status:** executable · free

*No schema description yet.*

**Ports**

| Direction | Port          | Type                  |
| --------- | ------------- | --------------------- |
| in        | `unit`        | unit                  |
| in        | `schedule_at` | object:calendar-slot  |
| in        | `*` (open)    | any                   |
| out       | `out`         | object:publish-result |

**Params** — passthrough (typed once the executor lands; any key is accepted).

**Example**

```json theme={"dark"}
{
  "version": "2.0",
  "name": "publish-example",
  "nodes": [
    {
      "id": "publish",
      "type": "publish"
    }
  ]
}
```

### `article-publish`

**Status:** executable · free

*No schema description yet.*

**Ports**

| Direction | Port          | Type                  |
| --------- | ------------- | --------------------- |
| in        | `unit`        | unit                  |
| in        | `schedule_at` | object:calendar-slot  |
| in        | `*` (open)    | any                   |
| out       | `out`         | object:publish-result |

**Params** — passthrough (typed once the executor lands; any key is accepted).

**Example**

```json theme={"dark"}
{
  "version": "2.0",
  "name": "article-publish-example",
  "nodes": [
    {
      "id": "article-publish",
      "type": "article-publish"
    }
  ]
}
```

### `youtube-upload`

**Status:** schema-only · free

*No schema description yet.*

**Ports**

| Direction | Port       | Type                  |
| --------- | ---------- | --------------------- |
| in        | `video`    | video                 |
| in        | `unit`     | unit                  |
| in        | `*` (open) | any                   |
| out       | `out`      | object:publish-result |

**Params** — passthrough (typed once the executor lands; any key is accepted).

**Example**

```json theme={"dark"}
{
  "version": "2.0",
  "name": "youtube-upload-example",
  "nodes": [
    {
      "id": "youtube-upload",
      "type": "youtube-upload"
    }
  ]
}
```

### `x-post`

**Status:** executable · free

*No schema description yet.*

**Ports**

| Direction | Port       | Type                  |
| --------- | ---------- | --------------------- |
| in        | `text`     | text                  |
| in        | `unit`     | unit                  |
| in        | `*` (open) | any                   |
| out       | `out`      | object:publish-result |

**Params** — passthrough (typed once the executor lands; any key is accepted).

**Example**

```json theme={"dark"}
{
  "version": "2.0",
  "name": "x-post-example",
  "nodes": [
    {
      "id": "x-post",
      "type": "x-post"
    }
  ]
}
```

### `analytics-pull`

**Status:** executable · free

*No schema description yet.*

**Ports**

| Direction | Port       | Type             |
| --------- | ---------- | ---------------- |
| in        | `*` (open) | any              |
| out       | `out`      | object:analytics |

**Params** — passthrough (typed once the executor lands; any key is accepted).

**Example**

```json theme={"dark"}
{
  "version": "2.0",
  "name": "analytics-pull-example",
  "nodes": [
    {
      "id": "analytics-pull",
      "type": "analytics-pull"
    }
  ]
}
```

## Related

* [Farm node-graph architecture](https://github.com/alecs5am/ralphy/blob/main/docs/architecture/farm-node-graph.md) — the design rationale behind these node types
* [`ralphy workflow`](/reference/cli/workflow) — lint and inspect a workspace's graphs
