---
title: "Finalize retirement certificate"
method: POST
path: "/retirements/finalize"
tags: ["Retirements"]
---

# Finalize retirement certificate

`POST /retirements/finalize`

## Request

- Base URL: `https://api.carbonregistry.com`
- URL: `https://api.carbonregistry.com/retirements/finalize`
- Auth: none declared
- TypeScript: <https://skmtc.dev/carbonregistry/apis/carbon-registry-rest-api/docs/retirements/finalize/post.ts> (a function with typed inputs; its response is checked against the schema)

This endpoint can be used by owners of an onchain retirement to finalize their retirement certificate - a certificate is only available for finalization if the retirement was made onchain and the beneficiary is missing.

## Headers

- `x-icr-api-version` string

## Request body

- FinalizeRetirementMutationParams
  - `signer` string, required: The signer address.
  - `signature` string, required: The signature. This a standard signature created by signing the data as a string in the following format - with double ";;" between each field - "beneficiary;;comment;;reason;;projectAddress;;tokenId" for info on how to sign strings see -> https://docs.ethers.org/v6/cookbook/signing/#cookbook-signing-messages
  - `signedData` SignedRetirementData, required
    - `comment` string, required: Comment associated with the retirement.
    - `reason` string, required: The reason for the retirement.
    - `tokenId` string, required: The token Id of the retirement nft.
    - `projectAddress` string, required: The contract address of the project where the retirement certificate was issued from.
    - `beneficiary` string, required: The beneficiary of the retirement.

## Response `200`

- ApiRetirementDto
  - `createdAt` string, date-time, required: The date of when this retirement was made
  - `id` string, required: The ID of the retirement
  - `isClaimed` boolean: Whether this retirement has been claimed - is false if the retirement happened permissionlessly on blockchain and owner has not claimed the retirement on ICR
  - `reason` string: The reason for the retirement
  - `comment` string: A comment about the retirement
  - `beneficiary` string: The name of the retiree
  - `organizationId` string, required: The ID of the organization associated with the retirement
  - `organizationOwner` ApiPaginationDto
    - `total` number, required: Total number of items
    - `currentPage` number, required: Current page number
    - `pageCount` number, required: Total number of pages
    - `nextPage` number: Next page number
    - `prevPage` number: Previous page number
  - `serialization` string: The serialization of the carbon credits associated with the retirement
  - `vintage` string: The vintage year of the carbon credits associated with the retirement
  - `amount` number, required: The amount of the retirement
  - `project` ApiProject, required
    - `id` string, required: The ID of the project
    - `fullName` string, required: The full name of the project
    - `url` string, required: The URL of the project
    - `publicUrl` string, required: The public URL of the project
    - `num` number, required: Project number. This is a unique identifier for the project

---

[API](https://skmtc.dev/carbonregistry/apis/carbon-registry-rest-api.md) - [All operations](https://skmtc.dev/carbonregistry/apis/carbon-registry-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/carbonregistry/apis/carbon-registry-rest-api/revisions/a9f1b102faca?raw)
