> For the complete documentation index, see [llms.txt](https://developer.celigo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.celigo.com/cli/commands/trading-partner-connectors.md).

# trading-partner-connectors

Browse the pre-configured connection templates used to onboard EDI trading partners. Celigo publishes a catalog of more than 590 definitions covering EDI, AS2, VAN, and other B2B transports. `list` and `get` are the common case. `create`, `update`, and `delete` exist for definition management, but Celigo curates the published catalog centrally.

A connector is *used* through two other commands: [`connections create --tp-connector <id|name>`](/cli/commands/connections.md#celigo-connections-create) links the partner's AS2, FTP, or S3 connection to it (`_tpConnectorId`), and [`edi-profiles create --tp-connector <id|name>`](/cli/commands/edi-profiles.md#celigo-edi-profiles-create) scaffolds the EDI profile it prescribes. See [Using a connector](#using-a-connector) below.

> **The group was renamed in celigo-cli 2026.8.1.** It was previously `tp-connectors`, which remains a working alias. `celigo tp-connectors list` and `celigo trading-partner-connectors list` are the same command.

**REST API**: [Trading Partner Connectors](https://developer.celigo.com/api/api-reference/trading-partner-connectors)

```
celigo trading-partner-connectors <subcommand> [args] [flags]
```

Supports all [global flags](/cli/getting-started/global-flags.md).

***

## Subcommands

| Subcommand    | Purpose                                                                                                       |
| ------------- | ------------------------------------------------------------------------------------------------------------- |
| `list`        | List every trading partner connector definition. `--distinct` returns the distinct `baseName` values instead. |
| `get <id>`    | Fetch one trading partner connector definition by ID.                                                         |
| `create`      | Create a trading partner connector definition (`--file <path>` or stdin).                                     |
| `update <id>` | Update a trading partner connector definition (`--file <path>` or stdin).                                     |
| `delete <id>` | Delete a trading partner connector definition.                                                                |

***

## `celigo trading-partner-connectors list`

List every trading partner connector definition in the catalog.

**Signature**

```bash
celigo trading-partner-connectors list [--fields <spec>] [--distinct]
```

**Arguments**

None.

**Flags**

| Flag              | Type    | Default   | Description                                                                                                                                                                                                                         |
| ----------------- | ------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--fields <spec>` | string  | `default` | Fields to request per row. `default` returns `_id`, `name`, and the table columns; `all` returns complete documents; a comma-separated list requests specific fields. See [field projection](/cli/getting-started/global-flags.md). |
| `--distinct`      | boolean | `false`   | Return the sorted distinct `baseName` values across published connectors — a string array, one entry per partner — instead of connector objects. Added in celigo-cli 2026.8.7.                                                      |

This list has no `--limit` flag. To cap the output, filter with `--jq`.

**Example**

```bash
celigo trading-partner-connectors list --format table

# Complete documents for the whole catalog
celigo trading-partner-connectors list --fields all

# One entry per partner: the distinct base names
celigo trading-partner-connectors list --distinct

# Every variant of one partner (its AS2, FTP, … connectors)
celigo trading-partner-connectors list --jq '[.[] | select(.baseName == "Acme Retail")]'
```

Default table columns: `_id`, `name`. With `--distinct` the output is a string array (one name per line in `table` format).

**Corresponds to**: [`GET /v1/tpconnectors`](https://developer.celigo.com/api/api-reference/trading-partner-connectors#get-v1-tpconnectors); with `--distinct`, `GET /v1/tpconnectors?distinct=baseName` (the only `distinct` value the server accepts).

***

## `celigo trading-partner-connectors get`

Fetch a single trading partner connector definition by ID.

**Signature**

```bash
celigo trading-partner-connectors get <id>
```

**Arguments**

| Argument | Type   | Required | Description                      |
| -------- | ------ | -------- | -------------------------------- |
| `<id>`   | string | Yes      | Trading partner connector `_id`. |

**Flags**

None beyond the [global flags](/cli/getting-started/global-flags.md).

**Example**

```bash
celigo trading-partner-connectors get 5f83a9b2c7d3e8f1a2b3c4d5
```

**Corresponds to**: [`GET /v1/tpconnectors/{_id}`](https://developer.celigo.com/api/api-reference/trading-partner-connectors#get-v1-tpconnectors-_id)

***

## `celigo trading-partner-connectors create`

Create a trading partner connector definition from a JSON body (`--file <path>` or stdin).

**Signature**

```bash
celigo trading-partner-connectors create --file <path>
celigo trading-partner-connectors create < body.json     # or pipe on stdin
```

**Flags**

| Flag                | Type   | Default | Description                         |
| ------------------- | ------ | ------- | ----------------------------------- |
| `-f, --file <path>` | string | —       | JSON body file (or pipe via stdin). |

**Request body**

A JSON object matching the `POST /v1/tpconnectors` request schema.

**Example**

```bash
celigo trading-partner-connectors create --file ./tp-connector.json
```

**Corresponds to**: [`POST /v1/tpconnectors`](https://developer.celigo.com/api/api-reference/trading-partner-connectors)

***

## `celigo trading-partner-connectors update`

Update a trading partner connector definition from a JSON body (`--file <path>` or stdin).

> ⚠️ **`update` replaces the entire definition.** `PUT` erases any field you omit. `GET` the definition first, edit it, then send the complete object back.

**Signature**

```bash
celigo trading-partner-connectors update <id> --file <path>
celigo trading-partner-connectors update <id> < body.json     # or pipe on stdin
```

**Arguments**

| Argument | Type   | Required | Description                      |
| -------- | ------ | -------- | -------------------------------- |
| `<id>`   | string | Yes      | Trading partner connector `_id`. |

**Flags**

| Flag                | Type   | Default | Description                         |
| ------------------- | ------ | ------- | ----------------------------------- |
| `-f, --file <path>` | string | —       | JSON body file (or pipe via stdin). |

**Example**

```bash
celigo trading-partner-connectors update 5f83a9b2c7d3e8f1a2b3c4d5 --file ./tp-connector.json
```

**Corresponds to**: [`PUT /v1/tpconnectors/{_id}`](https://developer.celigo.com/api/api-reference/trading-partner-connectors)

***

## `celigo trading-partner-connectors delete`

Delete a trading partner connector definition. The command prompts for confirmation unless you pass `-y`.

> ⚠️ **Deleting a trading partner connector cannot be undone.** Delete only definitions you created. The published catalog entries are managed centrally by Celigo.

**Signature**

```bash
celigo trading-partner-connectors delete <id> [-y]
```

**Arguments**

| Argument | Type   | Required | Description                      |
| -------- | ------ | -------- | -------------------------------- |
| `<id>`   | string | Yes      | Trading partner connector `_id`. |

**Flags**

| Flag        | Type    | Default | Description                   |
| ----------- | ------- | ------- | ----------------------------- |
| `-y, --yes` | boolean | `false` | Skip the confirmation prompt. |

**Example**

```bash
celigo trading-partner-connectors delete 5f83a9b2c7d3e8f1a2b3c4d5 -y
```

**Corresponds to**: [`DELETE /v1/tpconnectors/{_id}`](https://developer.celigo.com/api/api-reference/trading-partner-connectors)

***

## Using a connector

A trading partner connector is not created into a connection or a profile by hand-copying its document. Since celigo-cli 2026.9.1 two commands use it directly:

* [`connections create --tp-connector <id|name>`](/cli/commands/connections.md#celigo-connections-create) links an `as2`, `ftp`, or `s3` connection to the connector (`_tpConnectorId`), refuses a transport the connector does not provision, and lists the fields its connection form requires you to set.
* [`edi-profiles create --tp-connector <id|name>`](/cli/commands/edi-profiles.md#celigo-edi-profiles-create) scaffolds the EDI profile the connector prescribes — the file type, the X12 version, and the ISA/GS flags and qualifiers — and lists the interchange and group ids left to you.

The connector's connection form holds only the transport and template stand-ins: a placeholder partner id, a staging AS2 URI. The partner's host and identity are the fields you set, so there is no base URI to match a hand-written connection against — only its name. A hand-written `as2`/`ftp`/`s3`/`van` connection or an EDI profile named after a partner that has a connector therefore gets a stderr note naming the connector, never a refusal. Pass the full connector name to `--tp-connector`, or a base name that has one variant; a base name shared by a partner's AS2 and FTP variants must be given in full.

```bash
# Which partners have a connector?
celigo trading-partner-connectors list --distinct

# The partner's variants and their ids
celigo trading-partner-connectors list --jq '[.[] | select(.baseName == "Acme Retail") | {_id, name}]'

# Link the AS2 connection, then scaffold the EDI profile
celigo connections create --tp-connector 7b2c3d4e5f6a7b8c9d0e1f2a --name "Acme Retail AS2" --file ./as2.json
celigo edi-profiles create --tp-connector 7b2c3d4e5f6a7b8c9d0e1f2a --name "Acme Retail inbound"
```

***

## Gotchas

* **`tp-connectors` is still a valid alias.** The group was renamed in celigo-cli 2026.8.1, and the old name continues to work. Existing scripts need no change. New scripts should use `trading-partner-connectors`, which matches the resource name in the REST API reference.
* **Celigo curates the published catalog.** `create`, `update`, and `delete` exist for definition management, but Celigo owns the 590-plus published entries. These subcommands do not edit them. To change a published entry, contact Celigo.
* **These entries describe trading partners, not generic HTTP endpoints.** A trading partner connector covers an EDI, AS2, or VAN counterparty. For the HTTP connector catalog used by application-style connections, see [http-connectors](/cli/commands/http-connectors.md).
* **The API path is `tpconnectors`, with no hyphen.** The command is `trading-partner-connectors`; the endpoint is `/v1/tpconnectors`. The old command name matched the endpoint spelling more closely, which is why the alias remains.
* **The catalog is large.** `list --distinct` returns one base name per partner; to find a partner's variants, filter `list` with `--jq`, for example `--jq 'map(select(.name | test("walmart";"i")))'`. `--format table` also keeps the output readable.
* **A name is a note, not a gate.** The connector's form carries template stand-ins rather than the partner's real host and identity, so `connections create` and `edi-profiles create` can only match a hand-written body by name — and a name match produces a stderr note pointing at `--tp-connector`, never a refusal.

## Related

* [http-connectors](/cli/commands/http-connectors.md) — the sibling HTTP connector catalog for non-B2B systems.
* [edi-profiles](/cli/commands/edi-profiles.md) — `edi-profiles create --tp-connector` scaffolds the profile a connector prescribes.
* [connections](/cli/commands/connections.md) — `connections create --tp-connector` links the partner's AS2, FTP, or S3 connection to a connector.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developer.celigo.com/cli/commands/trading-partner-connectors.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
