---
title: "Upsert Mapping"
method: PUT
path: "/api/accounting/connections/{connection_id}/mappings"
tags: ["accounting"]
---

# Upsert Mapping

`PUT /api/accounting/connections/{connection_id}/mappings`

## Path parameters

- `connection_id` string, required

## Request body

- MappingRequest
  - `mapping_type` 'revenue_account' | 'expense_account' | 'expense_payment_account' | 'expense_tax_rate' | 'payment_account' | 'tax_rate' | 'item' | 'tracking_category' | 'tracking_option', required
  - `local_key` string
  - `external_id` string, required
  - `external_name` string, required
  - `external_code` string, nullable
  - `metadata` object

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

## Changes

> 23 revisions in range; 19 could not be searched.

- **2026-07-26** `13940b6986a4` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/every/apis/every-api/changes/api/accounting/connections/:connection_id/mappings/put.md)

---

[API](https://skmtc.dev/every/apis/every-api.md) · [All operations](https://skmtc.dev/every/apis/every-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/every/every-api/revisions/88bb31b8dace/schema)
