Decline a handover
const url = 'https://beta-api.plune.ai/v1/handovers/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/decline';const options = {method: 'POST', headers: {cookie: 'plune_session=<plune_session>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://beta-api.plune.ai/v1/handovers/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/decline \ --cookie plune_session=<plune_session>The member asked says no: the request becomes declined, nothing else changes, and the owner may ask again; both are told by mail. Anybody else, and a request no longer open, gets the 404 an id nobody has. Recorded in the project’s feed or the company’s log. The signed-in session alone: an API token gets 403 session_required — the owner holds the secrets, and a CI token neither asks for, answers nor reads a handover.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The handover.id of the request, as the mail’s page names it
Responses
Section titled “ Responses ”Declined
object
A handover of ownership (ADR 0050 §3): the owner asks one member to take the project or the company over; nothing changes until that member accepts. Seven days to answer, then expired.
object
The member asked, as GET /v1/members (or the company page) lists them
Example
{ "handover": { "id": "6f1c2b3a-0000-4000-8000-0000000000b9", "toUserId": "6f1c2b3a-0000-4000-8000-0000000000a2", "state": "declined", "expiresAt": "2026-08-04T09:00:00.000Z" }}No / invalid session
An API token
object
Example
{ "error": "a handover takes the signed-in session — an API token neither asks for, answers nor reads one", "code": "session_required"}Not a request to you, or no longer open
object
Example
{ "error": "handover '6f1c2b3a-0000-4000-8000-0000000000b9' not found"}Rate-limited: the per-route throttle, or the per-minute request limit of the plan an API token counts by (#1442; the body names the plan, #2092). Retry-After carries the seconds until the window rolls over.
object
Example generated
{ "error": "example"}Headers
Section titled “Headers ”Seconds until the window rolls over