A valid request URL is required to generate request examples{
"post": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>",
"body": "<string>",
"status": "open",
"votes": 123,
"weight": {
"currency": "<string>",
"amount_minor": 123,
"paying_customers": 123,
"other_currency_customers": 123,
"free_customers": 123
},
"author_contact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"merged_into_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
},
"votes_moved": 123
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}Merge a duplicate
Requires feedback:write. Folds this post into the one it duplicates: the votes move, and a person who had voted for both counts once on the survivor.
It is the contact merge’s arrangement one plane over, including the part that matters most — there is no un-merge, so what makes a wrong one repairable by hand is that the provenance stayed. merged_into_id records where the post went, and every moved vote records the post it was originally cast on.
Merged posts drop off the board and out of the public document. Merging into a post that has itself been merged is refused (409 target_merged) rather than followed: the votes would land where the target’s own votes no longer are.
A valid request URL is required to generate request examples{
"post": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>",
"body": "<string>",
"status": "open",
"votes": 123,
"weight": {
"currency": "<string>",
"amount_minor": 123,
"paying_customers": 123,
"other_currency_customers": 123,
"free_customers": 123
},
"author_contact_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"merged_into_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
},
"votes_moved": 123
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}{
"error": {
"code": "forbidden",
"message": "your role does not allow this action"
}
}Autorizações
A staff session token, uk_st_…. Minted by sign-up, sign-in or the two-factor exchange. Only a 401 means it is spent; not_a_member (403) is about the organization named in X-Organization-Id and leaves the token good for the others.
Cabeçalhos
The organization the caller is acting on — the org_… code that appears in the panel URL. It identifies; the membership JOIN is what authorizes, so a forged code reads nothing: the answer is not_a_member (403), which does not mean the session is over. Absent, the session's default organization answers, or — if that membership was revoked while the session was open — any other one the caller still holds.
Parâmetros de caminho
The duplicate — the post that disappears.
Corpo
The survivor. Same environment, and not itself merged.
Resposta
The merged post and how many votes moved.
One thing somebody asked for. Written by one of your users or by your staff on their behalf, answered by a status, and folded into another post when it turns out to be a duplicate.
Show child attributes
Show child attributes
Votes that were not already on the survivor. A person who had voted for both is not counted twice.