# addLink

Canonical: https://docs.shumoku.dev/en/library/api/addLink
Language: en

@shumoku/core · 0.4.0 · function

# addLink

[Source](https://github.com/konoe-akitoshi/shumoku/blob/main/libs/@shumoku/core/src/layout/interaction.ts#L595)

Add a link between two ports (existing or new). If fromPortId/toPortId refer to existing ports, use them. If toTarget is a nodeId (no port), create a new port on that node. Returns the updated graph with the new link, or null if invalid.

```
addLink(graph: NetworkGraph, fromPortId: string, toPortId: string): NetworkGraph | null
```

## Parameters

| Parameter | Type | Description | Default |
| --- | --- | --- | --- |
| `graph` | `NetworkGraph` | No additional description. | `—` |
| `fromPortId` | `string` | No additional description. | `—` |
| `toPortId` | `string` | No additional description. | `—` |

## Returns

```
NetworkGraph | null
```

[`libs/@shumoku/core/src/layout/interaction.ts:595`](https://github.com/konoe-akitoshi/shumoku/blob/main/libs/@shumoku/core/src/layout/interaction.ts#L595)
