---
title: "Save the caller's answers to custom questions about a partner"
method: PUT
path: "/api/companies/{id}/c2c-custom-questions/answers"
tags: ["Companies"]
---

# Save the caller's answers to custom questions about a partner

`PUT /api/companies/{id}/c2c-custom-questions/answers`

## 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/companies/{id}/c2c-custom-questions/answers`
- Auth: none declared

Replaces what the caller company answered about company `:id` to each question in the body — one item per question, `answer` for the question itself or `options` for a choice one — and answers those questions as `GET …/c2c-custom-questions` lists them. As legacy coerced it, `true` and numbers are stored as text and `false`, `0` and `''` as no answer. 404 `not_found` unless every question is one of the caller's own or a default one, not removed; legacy failed only when none was, and still wrote the rest. 400 `invalid_option` for an option its question does not have: only a `NUMBER_DYNAMIC_UOM` / `NUMBER_DYNAMIC_CURRENCY` question has its options replaced by the ones sent, to hold the picked unit — legacy replaced every question's options. 409 `custom_identifier_answer_unique_per_company` when a question with an `apiFieldIdentifier` gets a value the caller already gave another partner. Only the caller's own answers are replaced; legacy also deleted other companies' answers to a default question. Legacy answered a bare array; this answers `{ data, metadata }`.

## Path parameters

- `id` string, required

## Request body

- object[]
  - `questionId` string, required
  - `answer` union
    - unknown
    - boolean, nullable
    - number, nullable
    - string, nullable
    - object, nullable
  - `options` object[], nullable
    - `id` string
    - `key` string, nullable
    - `value` string, nullable
    - `unit` string, nullable
    - `retracedMapId` string, nullable
    - `answer` unknown

## Response `200`

Default Response

- object
  - `metadata` object, required
    - `success` boolean, required: True when the request succeeded.
  - `data` object[], required
    - `id` string, required
    - `isDefault` number, required
    - `isRemoved` number, required
    - `title` string, required
    - `hintText` string, nullable, required
    - `type` string, required
    - `apiFieldIdentifier` string, nullable, required
    - `fromCompanyId` string, nullable, required
    - `createdAt` string, nullable, required
    - `createdByImpersonateId` string, nullable, required
    - `createdByUserId` string, nullable, required
    - `createdByCompanyId` string, nullable, required
    - `createdByApiKeyId` string, nullable, required
    - `createdByApiKeyLabel` string, nullable, required
    - `updatedAt` string, nullable, required
    - `updatedByImpersonateId` string, nullable, required
    - `updatedByImpersonateName` string, nullable, required
    - `updatedByUserId` string, nullable, required
    - `updatedByUserName` string, nullable, required
    - `updatedByCompanyId` string, nullable, required
    - `updatedByCompanyName` string, nullable, required
    - `updatedByApiKeyId` string, nullable, required
    - `updatedByApiKeyLabel` string, nullable, required
    - `options` object[], required
      - `id` string, required
      - `questionId` string, required
      - `key` string, nullable, required
      - `value` string, nullable, required
      - `unit` string, nullable, required
      - `retracedMapId` string, nullable, required
      - `answer` object, nullable, required
        - `value` unknown, required
    - `answer` object, nullable, required
      - `value` unknown, required

## 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-18** `635b52ded6a8`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/retraced/apis/api-reference/changes/api/companies/:id/c2c-custom-questions/answers/put.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)
