---
search:
  tags:
    - proposals
    - POST
seo:
  description: >-
    API bearer tokens cannot accept proposals; acceptance happens in the…
    Reference for the POST /api/v1/proposals/{id}/accept endpoint in the Basenet
    Public API.
sidebar:
  label: Accept an exact proposal version (interactive human sessions only)
  badge: POST
title: Accept an exact proposal version (interactive human sessions only)
type: openapi-operation
---
API bearer tokens cannot accept proposals; acceptance happens in the Basenet UI.

Endpoint: `POST /api/v1/proposals/{id}/accept`

Authentication: `bearerAuth` (Scoped API token (bnx\_…). Required scopes are noted per operation.)

Parameters:
- `id` (in path, string, required)

Request body (`application/json`):
- `version` (integer, required)
- `idempotencyKey` (string, required)
- `confirmDuplicates` (boolean, optional)

Responses:
- `200`: Proposal accepted by an interactive human session
- `400`: Invalid request
- `401`: Unauthenticated
- `403`: Forbidden (missing scope or permission)
- `404`: Not found
- `409`: Proposal cannot be accepted or its version is stale
- `410`: Proposal expired
- `429`: Rate limited

Response 200 body (`application/json`):
- `ok` (one of `true`, required)
- `acceptanceId` (string, required)
