---
title: "Create a product placement"
method: POST
path: "/api/product-placements"
tags: ["Product Placements"]
---

# Create a product placement

`POST /api/product-placements`

## 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/product-placements`
- Auth: none declared

Creates a placement named `name` for `companyId` — the caller's own company when left out or `null`, otherwise one the caller is linked to (404 `invalid_company_id` when it isn't, as legacy answered) — and queues its copy into the style BOM placements. Answers 201 with the placement as stored, in the `{ data, metadata }` envelope (legacy answered the bare record). Unknown body keys are ignored, as in legacy.

## Request body

- object
  - `name` string, required
  - `companyId` string, nullable

## Response `201`

Default Response

- object
  - `metadata` object, required
    - `success` boolean, required: True when the request succeeded.
  - `data` object, required
    - `id` string, required
    - `name` string, required
    - `companyId` string, required
    - `createdAt` string, date-time, nullable, required
    - `createdByUserId` string, nullable, required
    - `createdByCompanyId` string, nullable, required
    - `updatedAt` string, date-time, nullable, required
    - `updatedByUserId` string, nullable, required
    - `updatedByCompanyId` string, nullable, required

## Other responses

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

## Changes

> 108 revisions in range; 2 not diffed.

- **2026-10-18** `d849442cd8d2`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/retraced/apis/api-reference/changes/api/product-placements/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)
