---
title: "merge a duplicate person (SourceId) into another one (TargetId) - tags, relations, affiliations, pending suggestions and names move to the target, the source is deleted (Auth policies: ganjoor:modify)"
method: POST
path: "/api/people/merge"
tags: ["GanjoorRelatedPerson"]
---

# merge a duplicate person (SourceId) into another one (TargetId) - tags, relations, affiliations, pending suggestions and names move to the target, the source is deleted (Auth policies: ganjoor:modify)

`POST /api/people/merge`

## Request

- Base URL: `https://api.ganjoor.net` (the document declares no server; this is the origin it was published from)
- URL: `https://api.ganjoor.net/api/people/merge`
- Auth: API key in header `Authorization`

## Request body

- PersonMergeViewModel: merge two people: everything attached to SourceId moves to TargetId and SourceId is deleted
  - `sourceId` integer: the duplicate person, deleted at the end of the merge
  - `targetId` integer: the person who stays

## Response `200`

OK

- string

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden

## Changes

- **2026-10-10** `330e7bb195c1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ganjoor/apis/rmuseum-api/changes/api/people/merge/post.md)

---

[API](https://skmtc.dev/ganjoor/apis/rmuseum-api.md) - [All operations](https://skmtc.dev/ganjoor/apis/rmuseum-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ganjoor/apis/rmuseum-api/revisions/143b912b1085?raw)
