---
title: "POST /api/cascade-tracing/orders/link-sales-order"
method: POST
path: "/api/cascade-tracing/orders/link-sales-order"
tags: ["Order Tracing - Orders"]
---

# POST /api/cascade-tracing/orders/link-sales-order

`POST /api/cascade-tracing/orders/link-sales-order`

## Request

- Base URL: `https://api.retraced.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.retraced.com/api/cascade-tracing/orders/link-sales-order`
- Auth: none declared

Links one of the caller's purchase orders to one of its sales orders: the purchase order's supplier side is reconnected to the sales order's buyer node. Repeating a link is harmless. 404 `not_found` when either order is missing, removed, archived or another company's; 409 `cannot_link_order_with_different_attachment_template`; 400 `cannot_link_orders_with_same_supplier_and_buyer_company_of_the_initial_order` when the link would loop back to the company the sales order already supplies. The chain, the link and the partners' notifications are refreshed in the background.

## Request body

- object
  - `purchaseOrderId` string, required
  - `salesOrderId` string, required

## Response `204`

No content

- 'null', nullable: No content

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `404`: Default Response
- `409`: Default Response

## Changes

> 108 revisions in range; 2 not diffed.

- **2026-10-09** `ddfec192e804`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/retraced/apis/api-reference/changes/api/cascade-tracing/orders/link-sales-order/post.md)

---

[API](https://skmtc.dev/retraced/apis/api-reference.md) - [All operations](https://skmtc.dev/retraced/apis/api-reference/llms.txt) - [OpenAPI document](https://skmtc.dev/retraced/apis/api-reference/revisions/83309c4abd20?raw)
