---
title: "Create Code Scan Pick"
method: POST
path: "/v1/projects/{project_id}/code-scan/translatable-props"
tags: ["code-scan"]
---

# Create Code Scan Pick

`POST /v1/projects/{project_id}/code-scan/translatable-props`

## Request

- Base URL: `https://api.sonenta.dev`
- URL: `https://api.sonenta.dev/v1/projects/{project_id}/code-scan/translatable-props`
- Auth: none declared

Mark a (component, prop) translatable (Developer+).

IDEMPOTENT: a re-POST of the same pair returns the EXISTING pick with a 200 —
never a duplicate, never a 409. Persistent: the pick survives re-scans; the
CLI reads it to flag the prop so its literal comes back as a finding.

## Path parameters

- `project_id` string, required

## Request body

- CodeScanPickIn
  - `component` string, required: Component/tag name, as it appears in the inventory.
  - `prop` string, required: Prop/attribute name.
  - `note` string, nullable

## Response `200`

Successful Response

- CodeScanPickOut
  - `uuid` string, required
  - `component` string, required
  - `prop` string, required
  - `note` string, nullable
  - `created_at` string, date-time, required
  - `created_by` CodeScanRunActor: Display-ready attribution — the dashboard renders the `label`, never the raw `uuid` (which stays for an audit join). `label` is a human name resolved at BOUNDED per-page cost (a user's name/email, or a key's `name · prefix…last4`). A uuid that no longer resolves keeps its `type`/`uuid` and gets an explicit label (`unknown user` / `revoked or deleted key`) rather than vanishing — the attribution stays true, only the human name is gone.
    - `type` string, required: `user` or `api_key`.
    - `uuid` string, required
    - `label` string, nullable
  - `in_inventory` boolean, required: Does this (component, prop) still exist in the latest scan's inventory? false = ORPHAN — the pair left the code; the console flags it.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/sonenta/apis/sonenta-api.md) · [All operations](https://skmtc.dev/sonenta/apis/sonenta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sonenta/apis/sonenta-api/revisions/f853ea49fb05?raw)
