> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fire.rest/llms.txt
> Use this file to discover all available pages before exploring further.

# Sincronizar unidades (bulk upsert)

> Insere ou atualiza unidades de medida e grupos de unidades em uma única chamada.

<ParamField header="x-api-key" type="string" required>
  API key do BOH com escopo `catalog:write`.
</ParamField>

<ParamField path="vendorId" type="string" required>UUID do vendor.</ParamField>

<ParamField body="units" type="object[]" required>
  Array de unidades a sincronizar.

  <Expandable title="campos da unidade">
    <ParamField body="external_unit_id" type="string" required>Chave de reconciliação.</ParamField>
    <ParamField body="name" type="string" required>Nome da unidade.</ParamField>
    <ParamField body="abbreviation" type="string" required>Abreviação.</ParamField>
    <ParamField body="unit_group_external_id" type="string" required>ID do grupo de unidades.</ParamField>
    <ParamField body="conversion_factor" type="number">Fator de conversão relativo à unidade base (padrão 1).</ParamField>
  </Expandable>
</ParamField>

<ParamField body="unit_groups" type="object[]">
  Grupos de unidades a criar antes das unidades.

  <Expandable title="campos do grupo">
    <ParamField body="external_unit_group_id" type="string" required>ID do grupo.</ParamField>
    <ParamField body="name" type="string" required>Nome do grupo.</ParamField>
  </Expandable>
</ParamField>

<RequestExample>
  ```json theme={null}
  {
    "unit_groups": [
      { "external_unit_group_id": "peso", "name": "Peso" }
    ],
    "units": [
      {
        "external_unit_id": "kg",
        "name": "Quilograma",
        "abbreviation": "kg",
        "unit_group_external_id": "peso",
        "conversion_factor": 1
      }
    ]
  }
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "synced_units": 1,
    "synced_unit_groups": 1
  }
  ```
</ResponseExample>
